查看: 3803|回复: 24
|
软件工程师的基本功
[复制链接]
|
|
请问,一个具备竞争能力的软件工程师是具备什么样的技术?
|
|
|
|
|
|
|
|
发表于 28-4-2013 06:48 PM
|
显示全部楼层
logic 思考最重要, 要怎样的去想和设计一个program 的flow, 怎样的去判断一个program能不能meet user requirement等之类,然后也要懂得怎样的去解决程序上的问题。至于 programming syntax ,绝对不是问题,因为有google 存在。
|
|
|
|
|
|
|
|
发表于 29-4-2013 07:16 PM
|
显示全部楼层
我觉得
基本功是包括 除了 logic 之外,
还要把 program 写得容易读。
你也不想多年以后,顾客要求你改进,
而你连自己的 code 都看不懂吧?
另外就是操作问题,要如何让 user 可以更简单的达到他们要的结果。
不论是触屏、滑鼠、键盘、摇杆,
如果一个步骤就可以解决的,
不必用到多余的步骤。
另外就是周边的问题。
如果是 asp.net 就必须基本了解 iis 的设定。
php 配合 apache 或者 iis 都可以,就两样都要学。
基本上 apps 都有使用到 network
那么电脑基本网络设定,firewall,router
都可能照成你的 apps 反应不良,甚至当机。
再来就是 database
从基本的 ms access, MySQL, MSSQL, SQLite, ...
如果你正在做的 project 有用的,就必须有基本认知,
还有需要知道优缺点。
|
|
|
|
|
|
|
|

楼主 |
发表于 29-4-2013 08:43 PM
|
显示全部楼层
flashang 发表于 29-4-2013 07:16 PM 
我觉得
基本功是包括 除了 logic 之外,
还要把 program 写得容易读。
我现在连基础都有问题。
|
|
|
|
|
|
|
|
发表于 30-4-2013 11:35 AM
|
显示全部楼层
现在程式员不好当
做个standard的java web developer
我目前所知是需要懂:
管理 - maven
后台 - jpa,hibernate,ejb,spring, 以及常用的db
界面 - jsf, jsp, struts
测试 - junit + arquillian
webservice - restful
设计 - 至少标准的design pattern
以上的还学不完, 应该还有很多我还不懂的
|
|
|
|
|
|
|
|
发表于 2-5-2013 02:06 PM
|
显示全部楼层
赞同楼上。
我在大学学的电脑课很多是实践课,重要的是逻辑思维训练和程式除错(debug)。
踏入社会后还要学很多很多工作上要用到的语言。
总之就是在拼命学习。 |
|
|
|
|
|
|
|
发表于 2-5-2013 02:57 PM
|
显示全部楼层
唉...想当个普普通通的programmer,可是却没人要...haiz... |
|
|
|
|
|
|
|
发表于 2-5-2013 07:33 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 3-5-2013 06:48 PM
|
显示全部楼层
内功:懂得解读language
外功:copy、paste、modify |
|
|
|
|
|
|
|
发表于 18-5-2013 02:55 AM
|
显示全部楼层
-熟能生巧
-化繁為簡
-舉一反三
-青出於藍
-化腐朽為神奇 |
|
|
|
|
|
|
|
发表于 18-5-2013 10:41 PM
|
显示全部楼层
我想请问下现在这个时代什么电脑语言最有前途????java,c++,c#,html...??? |
|
|
|
|
|
|
|
发表于 18-5-2013 11:36 PM
|
显示全部楼层
GamaX320 发表于 18-5-2013 10:41 PM 
我想请问下现在这个时代什么电脑语言最有前途????java,c++,c#,html...???
html是一定要的, 只要是做web都要会
java c#(.net)就选1样来精通, 都有前途(我个人比较喜欢cross platform的java, .net虽然可以在linux跑, 不过需要第3方library)
最近火红的language之一就是python, 号称无所不能, 也是跨平台, 而且上手快
问题是去jobstreet找django(python的web framework之一), 竟然才出1,2个result而已
所以要不要学就见仁见智吧
要稳定不要乱的话就是java,.net吧
补充: 有时候我们说language, 是指syntax, 其实背后的concept才是最重要的, 精通concept后再学其他language也不难, 去找oop, design pattern
本帖最后由 nsda 于 18-5-2013 11:42 PM 编辑
|
|
|
|
|
|
|
|
发表于 18-5-2013 11:47 PM
|
显示全部楼层
nsda 发表于 18-5-2013 11:36 PM 
html是一定要的, 只要是做web都要会
java c#(.net)就选1样来精通, 都有前途(我个人比较喜欢cross pla ...
谢谢~你的推荐
|
|
|
|
|
|
|
|
发表于 19-5-2013 11:22 PM
|
显示全部楼层
会讲就是基本功啦, 很多IT界高薪的presentation skill 都很好。 看你要做人文电脑,还是电子电脑。很多人都分不清楚的, 其实从事电脑这个行业有两种人很成功, 一种就是编程怪这类型人没有什么技术是学不会的, 因为都是在他们很强的基础上做变化, 另一种可能程式写的还不错,在处理用户需求,管理案子和客户的沟通上总能把客户带到双赢的局面。 所以为什么读商科的比尔盖斯能做电脑大亨, 电脑一个日新月异的行业,从来就没有一个技术是可以用十年不用在学的,像当年做flash的现在还是要像html5低头,什么是基本功,学习的方法,我大概列下如何学一个基本的语言:
1. 先让自己可以把开发环境搞起来
2. 什么都不做先让自己做第一个hello world, 来到这里你最基本compile 没问题
3. 把 if,while ,for 都做一遍
4. OOB 实现以下
5. 写一个gui 的计算机 (这里你对GUI没问题了)
6. 连DB看看能吗 (可以写商业程式了)
7. 开始尝试TCP/IP, Comm, USB programming (可以做automation)
8. 看看这个语言有没有framework, 去了解和试试 (到了大环境了)
全程 16天恭喜出关, resume 上又多一个会的语言,
不管出什么language 就闭关16天你又是高手了
|
|
|
|
|
|
|
|

楼主 |
发表于 20-5-2013 02:27 PM
|
显示全部楼层
yiquan1981 发表于 19-5-2013 11:22 PM 
会讲就是基本功啦, 很多IT界高薪的presentation skill 都很好。 看你要做人文电脑,还是电子电脑。很多人都 ...
请问,这几个步骤是什么来的?
6. 连DB看看能吗 (可以写商业程式了)
7. 开始尝试TCP/IP, Comm, USB programming (可以做automation)
8. 看看这个语言有没有framework, 去了解和试试 (到了大环境了)
谢谢... |
|
|
|
|
|
|
|
发表于 20-5-2013 02:50 PM
|
显示全部楼层
加峻 发表于 20-5-2013 02:27 PM 
请问,这几个步骤是什么来的?
6. 连DB看看能吗 (可以写商业程式了)
7. 开始尝试TCP/IP, Comm, USB ...
如何学一个新的开发语言
|
|
|
|
|
|
|
|
发表于 26-5-2013 09:03 PM
|
显示全部楼层
flashang 发表于 29-4-2013 07:16 PM 
我觉得
基本功是包括 除了 logic 之外,
还要把 program 写得容易读。
除此之外,还要替Operation Engineer着想,program要有一些error 的pre-checking,如果没有的话,Operation Engineer会很不得空。
我是Operation Engineer出身,现在是软件工程师,所以我常常会站在Operation的立场来设计program。
一年可能有上几十个的大大小小的program,常常遇到那些program没有pre-checking,Operation Engineer就要帮软件工程师清理‘大便’,而且program通常已经是在Production 了,搞到Operation Engineer压力更大。 以前的我常常诅咒那些写烂program的软件工程师。
|
评分
-
查看全部评分
|
|
|
|
|
|
|
发表于 26-5-2013 09:07 PM
|
显示全部楼层
AdventChildren 发表于 3-5-2013 06:48 PM 
内功:懂得解读language
外功:copy、paste、modify
对!!!好的软件工程师要懂得解读。
|
|
|
|
|
|
|
|
发表于 30-3-2014 11:34 PM
|
显示全部楼层
yiquan1981 发表于 19-5-2013 11:22 PM 
会讲就是基本功啦, 很多IT界高薪的presentation skill 都很好。 看你要做人文电脑,还是电子电脑。很多人都 ...
请问这两句是什么意思?第7的是怎么进行的。
7. 开始尝试TCP/IP, Comm, USB programming (可以做automation)
8. 看看这个语言有没有framework, 去了解和试试 (到了大环境了)
|
|
|
|
|
|
|
|
发表于 9-4-2014 11:23 AM
|
显示全部楼层
基本就是可以把你自己想要的东西code出来,又运作到像自己想要的那样。 |
|
|
|
|
|
|
| |
本周最热论坛帖子
|