瞎扯淡 我为什么就学不会编程

yjdwbj · 2012年05月04日 · 最后由 charmquark 回复于 2012年05月04日 · 3581 次阅读

为什么我能自学会Linux(运维,系统管理,不敢说精通,只能说是烂熟),并且能混到饭吃,我为什么就学不会编程呢?现在只能做一些改代码的事情。就在原有项目(c\c++ MFC混合编程),自已看代码,调试,再根据要求添加功能 。我现在不明白一个项目是要从宏观还是从局部去了解它。唉,,,一头雾水。不知何去何从

共收到 16 条回复

不要放弃,系统的学习比自己瞎子摸象要好的多,对于一个项目你得先看数据库的表设计,还有就是业务逻辑的基本实现,最起码能自己走一遍就差不多了,再对自己感兴趣的地方去看代码

楼主太谦虚了吧 :) 在原有项目(c\c++ MFC混合编程),自已看代码,调试,再根据要求添加功能 这已经是在进行开发了吧。

你从C\C++ MFC入手,本来就有点深了 MFC这种东西很恶心,真不是每个人都能觉会的 来学ruby吧,对你运维也是有好处的

基础问题吧,由浅入深

Ruby 並不比c簡單,只是battery included(電池己附),標準庫中有的是好用的類和函數,相比C的標準庫和C++的STL較容易上手。

學編程從C入手是正道,起碼能熟悉流程控制、基本數據類型、指針一類概念。作運維應該知道一點bash吧,我倒覺得bash是最難學的,太多希奇古怪的句法,好像迷魂湯。

#2楼 @skandhas 不是谦虚,是真的很虚。现在大部分时闲着,有时就让我自已去看代码,改一些简单的功能

#3楼 @azhao ruby & rails 电子书与视频下了不少,就是没有去用心去学。唉。。

这个主题比较有意思。参考我的微博:http://weibo.com/1234692487/ycaHZ11cs#1336117181569

#8楼 @freemem 微博访问不了

当年 教练告诉樱木花道 要 投篮一万次!

@freemem 这不是微博链接吗?啥帖子

MFC 是我见过,最烂的代码库,烂到令人发指。 我觉得,楼主在编程的道路上,没有找到一个好的介入点。 学习编程,最好,参与到一个新的项目开发。 这样你才能得到最大的锻炼。 但是新的项目开发,需要有“客户需求”, 而“客户需求”不是那么容易遇到,可遇不可求。

楼主,MFC不要深入研究啦,是个已经被淘汰的东西啦。 做桌面应用,学学winform.net吧 做手机应用,学学IOS吧 做网站,学学Rails吧

曾几何时,所有程序员都是“一头雾水,不知何去何从” 坚持下去,一定能做一个好的程序员。 但是绝不要坚持学习MFC。

运维是一个典型的充满重复劳动的工作,找找工作中任何一个有重复性的事情,编程搞定,然后重写这段程序,让别人能傻瓜化的使用,再收集别人的需求完善,不断重构,写上10万行代码以后你就不会问这个问题了

#5楼 @charmquark 我觉得C++的STL是一套非常优美的代码库。

我觉的初次学习编程,从C入手,有点不合适,因为指针和内存管理的概念,在新的主流编程语言中(比如java c# python ruby),已经越来越淡化啦,而且C连个好用的字符串类型都没有。

我反而觉得初次学习编程,从Ruby这样的语言入手,反而容易些,当需要学习底层知识的时候,再去研究C语言也来的及。

我也觉得bash的脚本编程很难学,语法太奇怪啦,极其难以读懂。

#13楼 @fsword 10万行代码,对新手而言,这真是一个好的目标,我想,任何人编写10万行代码以后,都能成为一个好的程序员。

#14楼 @ery 不懂指針和資源管理,怎縻可能寫出高效的代碼來呢?C++0x加上了 rvalue references && 和 move機制,簡直把高效發揮到極致了,越看越喜歡 ;) ruby 並不簡單,比如 甚麼 class instance variable, extend 和 include 的差異,block和proc的差異,singleton啦,mixin啦,都不是那麼直觀的。python 的 self, meta class 還不如 C 的 myclass_meth (obj, arg) 來得明白。要講簡單,還是java最簡單,php次之,但是很容易把程序員訓練成呆子。靈活的語言學起來纔有意思。

python:

for x in range(1,11) :
    pass

ruby

for x in 1..10
  blah
end

python

def showName (self)
  print self.name

ruby

def show_name
 puts @name
end

相比較而言,還是ruby 更直觀,更適合初學。只是真想寫出點像樣的東西,那些比較繞騰的cloure,mixin之類都得把原理搞清楚,那就比 ANSI-C 要難了。C只是用起來不舒服,學起來還是相對容易的。而且所介紹的一些概念都是至關緊要的。若是我帶學生,學編程的步驟就是

C -> JAVA -> ruby/python/javascript/C#/C++(任選)

更外,MFC 也不好用 winform來取代吧。除非是工作的須要,那講不了。感覺 .NET沒甚麼前途。想作桌面程序還是學用QT吧。C#是很不錯的語言,比JAVA強得太多,只是被.NET給限制住了。如果是自己做東西,別說跨平臺不容易,就是win本身,國內的一般用戶恐怕有一多半是連.net 2.0都沒裝的。想要自己的程序不受限制,要麼做web要麼做c/c++ 連ruby/python都是fat ass,佈署非常頭疼的。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册