China-Lyz 发表于 2013-1-17 18:31:23

谈谈大学生应该如何学习软件,计算机语言

谈谈大学生应该如何学习软件,计算机语言

      写这篇文章前,我考虑了一下后果,可能是一大堆臭鸡蛋砸过来。但是我还是选择把自己的想法表达出来,无论后果怎样。以为我是管理学院大三的,以一个外行身份谈软件,谈到一些幼稚的地方,软件学院的人就会拿臭鸡蛋了,呵呵。说到编代码,不太强,但是软件工程还是颇有了解的。
      从我校软件学院同学学习软件的经历说起吧。
      刚到大学时,对计算机一点也不了解,大一经常去泡网吧熟悉了一些计算机操作之后,然后上第一节软件科-------C语言。老师只是说C语言很有用,很多底层都是C语言写的,大家也是很努力地学,学习用C语言把一些数学方面的题解出来,还有一些简单函数的使用,当时学习很熟练,自认为是C语言高手。但是有一个疑问迟迟不能得到解答。大二的时候学习C++也是学习一些语法,函数,类之类的东西,都是简单的操作,然后就是学java了,如此周而复始。语言学的倒是挺多,但是就是很难做出实际的项目来。在这段漫长的时间里,很多人有些迷茫,迷失了方向。到底以后我们是做什么的,学了这么多东西,好像没有实际应用。
         到大三时候才学习数据库,没学他时候,就不知到它有什么用,学了之后才觉得相见恨晚。都大三了,学校才安排这课程----仰天长啸啊。学到大四方可以做出一些小型项目来。
      再重中国大学教育的角度分析一下上面的原因
      对于上面的原因,我粗虐分析一下。因为中国的教育主张重基层做起。而没有让学生系统的了解一下他们学习的是什么东西。就如武侠练武一样,习武必须先扎马步。不要问为什么,什们时候能成为武林高手啊?答曰:马步还没有扎好,就想这些,先把基本功练好,连2-30年吧。晕。中国的传统教育方式,从基础做起。这点在哲学上是没有错的。但是不是每个人都需要有耐心。而且教育过程中,教育者也不会把以后学些什么,以后实际应用中如何应用这些知识告诉学生,因为他们认为这样会导致学生急功近利。不是软件如此,而且很多其他学院也一样,我们管理学院大一时开很多数学课,我们大家多觉得管理学数学之类的,大家都觉得没用,虽然老师一再强调很有用,但是大家没有这个意识,直到大三,对自己专业有一个系统性的了解时。才知道数学很有用。
       大学生应该怎么学习软件和计算机语言
       无论你是在初学者,还是有一定计算机基础的同学。在学习之前,应该系统的了解一下你所学的东西。不是在网上随便的查资料,粗劣了解。而是系统的了解。换句话说就是知道你知道一个软件工程师是怎么做软件的。他都用到什么样的知识。自上而下地了解,然后再自下而上地看书,做练习,上机实践,提高自己
   开发一个大型软件应该怎么做?自上而下了解
       先做系统了解软件项目,做项目通俗一点就是做我们经常在电脑上用到的软件,或者网站。做这些东西通常不是自己一点一点编写代码。通常你会用到框架。框架你不太明白的话,可以去百度搜索一下。For example,C++做软件时要用到一个叫MFC的框架。里面封装了很多Windows aspi之类的。就不用拿着api参考手册一个个的查了。做php时用很多框架,如zendframework,cakephp,等等。Java有structs,spring等等。但据说,很多公司都有自己的框架,你学的这些框架到以后工作不一定有用。主要是learn to learn。用这些框架你的省了很多功夫,不用编写很多代码就可以做项目。既然这样可以通过从编写代码中解放出来了。你可以把主要的精力集中在数据库建模上(数据库设计,可以用powerdesigner等软件简化工作)。还有系统流程的设计,uml建模。这就涉及软件工程的知识了。(其实有时候只要设计好数据库,还有uml模型,可能完全不编写代码就可以做项目,下载一个代码生成器,生成代码,再稍微改一下就ok了。做项目就是这么简单)
      工欲善其。。。必先利其器,这句话怎么说来着。下面介绍项目开发经常用到的软件,学这些软件的用法也是我们学习的一部分。就拿。net开发网站来说吧,当然你也可以上网查一下开发xxx常用到的软件等等然后把这些软件都下下来,看看他们能做什么。。net项目开发常用的软件
power designer   数据库建模
    rational rose    uml建模
    Business Object 报表
            
    unitant            编译工具,用于软件调试
    VSS(B)            同步,用于多个人开发一个项目,把项目的代码放在vss服务器上,然后团队成员,就可以用IDE(如visual   studio 连上服务器编辑代码。当然也可以架设一个ftp把代码放在ftp上实现团队编程)
      dreamweaver    网页制作
    mssql         数据库
    IIS(internet 信息服务器,就是我么通常说的服务器)          服务器   jbuilder(A)         开发工具
    visual studio      开发工具IDE
    .netframeworkA)            。net框架
   动软代码生成器      生成代码
codesmisth         生成代码

学习了这些软件可以简化很多工具,即使你不会怎么编写代码,也可以把你变成一个软件高手。
   大学生学软件的学习步骤,自下而上地提高
上面大体的了解了软件工程开发,我上面说的不太清楚,建议大家多多查资料了解一下。
   学编程,首先得学语言,可以同时学多门语言。因为语言的语法都是差不多的。计算机语言大概分为类C语言,和类VB语言。像Java,C# ,C++都是类C语言。学这些可以一起学。
   学完语言后建议大家去学一下数据库。因为数据库的操作都差不多,所以学好一个数据库其他的也会了。建议大家学mysql。主要的是要学会操作数据库的sql语言。学完数据库后配合所学的语言,编写一些小系统。找几本书,比如学java的,找本java数据库系统开发,学php的,就找php数据开发。然后做一小型的系统,比如选课系统,博客之类什么的,主要把侧重点放在数据库设计上。
   学完之后就学习我们说的框架了,但是在学习框架之前要先去了解一下设计模式比如比较流行的(MVC),( C#的三层架构)(工厂模式)更多模式请百度一下。如果你不了解设计模式的话你会对框架很困惑,因为他的编程方法跟我们以前学的顺序的编程模式不同。框架一般都有一定编程模式。当你对框架学习到一定程度的时候,学习一下软件工程方面的知识,这些知识比学语言简单,但是很实用,比如UML建模了。   到这里你已经可以做大软件和大网站了。可以尝试去做一个项目,或组织团队做项目。做项目过程中多去学一些辅助软件这样对项目的效率会有很大提高的。
   好的,不知道我说的是好还是差,我能说的就这些了,还有很多不足的地方请大家留言指正,这毕竟是我的一面之词


https://www.gn00.com/xwb/images/bgimg/icon_logo.png 该贴已经同步到 China-Lyz的微博

南南 发表于 2013-1-17 18:55:36

WinAPI + DirectX + 脚本语言的表示 我底层习惯了

_Nozomi 发表于 2013-1-17 18:57:07

这是……原创的?

とある 发表于 2013-1-17 19:34:23

南南 发表于 2013-1-17 18:55 static/image/common/back.gif
WinAPI + DirectX + 脚本语言的表示 我底层习惯了

膜拜啊 DirectX什么的不敢碰啊

ApfelZaft 发表于 2013-1-17 19:38:17

术业有专攻。

咩。 发表于 2013-1-17 20:20:59

本帖最后由 咩。 于 2013-1-17 20:23 编辑

顶锅盖撸过说下 现在不用VSS了 用VSN的比较多
数据库还是推荐学oracle 现在oracle更实用一些吧_(:з」∠)_

秋声赋 发表于 2013-1-17 20:44:52

.net用MVVM多点
我也一直觉得 培养兴趣和动手实践是最重要的

moxiagy 发表于 2013-1-17 21:09:07

撸过借鉴。。虽然貌似对我来说已经晚了。。。

骑士 发表于 2013-1-17 22:25:23

刚开始不要问为什么,这点我不是很喜欢

姜小衰 发表于 2013-1-18 00:19:13

Whisper1166 发表于 2013-1-17 18:57 static/image/common/back.gif
这是……原创的?

感觉不是原创的……
于是我百度了……
然后……=367=
我也不知道额

liyulin1222 发表于 2013-1-18 02:07:15

不错适合学习#21x

vamb 发表于 2013-1-18 02:36:36

LZ写的挺好的,其实有的时候中间插入一些表情,使用下分隔线或者是别的东西会更好吸引童鞋过来,毕竟大家看的都是文字有点恼火,嘿嘿,LZ八要生气呀#22x

南南 发表于 2013-1-18 15:25:34

とある 发表于 2013-1-17 19:34 static/image/common/back.gif
膜拜啊 DirectX什么的不敢碰啊

Direct基础...... 一般用用 强大的动态图形学偶数学不行

huyongzs 发表于 2013-1-19 07:43:20

好像是应该看哪个方向。有web,底层,桌面,移动,安全都不一样的学法。用到的东西很多也不一样

langyxxl 发表于 2013-1-19 13:25:49

在windows下学软件编辑,不得不说很多东西都不知道啊=427=
页: [1] 2
查看完整版本: 谈谈大学生应该如何学习软件,计算机语言