我到底应该着重学哪一门语言? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的容
Hyperion
V2EX    程序员

我到底应该着重学哪一门语言?

  •  
  •   Hyperion 2011-06-05 10:43:22 +08:00 6944 次点击
    这是一个创建于 5247 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近突然开始苦恼, 我到底应该去精哪一门语言.

    我现在会的很杂, 擅长一点的有: php, Javascript.
    可以基本看得懂, 也能写一点点的有: c, c#, vb.net, python, as3, ruby.
    完全不会的: java, c++.

    其他方面, 我对面向对象的认识有些不伦不类, 基本是对象和过程的乱伦体……

    而且我突然发现, 最近写东西, 写着写着语法会串……

    对web开发和各种手机平台上的应用开发有很大兴趣……

    我现在最想折腾的是 c++ 和 python, 但c#也不想放弃, 但实在是经历有限. 现在想挑一门或者两门可能为之奋斗终身(或者相对很长的一段时间)的语言.

    我有一点代码洁癖, 讨厌满屏大写字母, 喜欢驼峰, 可以接受一切"反人类"语法. 现在我还是个学生, 想花个几年来磨基本功, 不知道各位前辈有啥建议?
    28 条回复    1970-01-01 08:00:00 +08:00
    happypy1
        1
    happypy1  
       2011-06-05 10:50:35 +08:00
    语言不是问题,你学精通了其中一门,其它的都可以触类旁通的。

    楼主既然对WEB开发有兴趣,那就学PHP和Javascript算了。

    不用纠结在语言的问题上。
    fengluo
        2
    fengluo  
       2011-06-05 10:57:04 +08:00
    Python无疑是无比优雅的~
    在对于快速开发相关应用上,python也具有相当优势。
    Livid做出v2ex这个案例就很经典吧
    觉得没有什么可以用一生的语言,或者是可以适用于任何平台环境的语言。对于开发者来说,拥有扎实的基础,和快速学习和适应越来越多的新技术是很重要的技能。
    magic
        3
    magic  
       2011-06-05 11:01:33 +08:00
    C语言能学好,你就很NB了
    chloerei
        4
    chloerei  
       2011-06-05 11:39:58 +08:00
    一门让你挣到钱的语言,一门让你感到乐趣的语言
    wenhuacn
        5
    wenhuacn  
       2011-06-05 11:48:58 +08:00
    继续把Javascript 学到精通
    nodejs 的出现,js 成为全栈语言,能够完成完整应用的开发
    Hyperion
        6
    Hyperion  
    OP
       2011-06-05 12:48:05 +08:00
    @happypy1 php 觉得越来越不好用了... 而且也不能用来开发手机应用

    @fengluo 我的脑袋比较一根筋... 专点一门天赋我觉得对我更好一点点...

    @magic 工作以后会很好找么?...

    @chloerei 能举个例子么?...

    @wenhuacn 汗...天朝能够普及么? 前景好么?
    chloerei
        7
    chloerei  
       2011-06-05 13:13:51 +08:00
    @chloerei

    一门挣到钱的语言:直接看你理想中的公司的招聘页,需要什么技术人才。其实理想中的公司并不遥远。

    一门感到乐趣的语言:你觉得这个语言设计得很好,写起来很有快感,社区的人也让你感到亲和力,你喜欢用这个语言开发一些业余项目。

    我很走运,找到一个语言覆盖了这两个领域Ruby,然后我又有更多时间去学别的技术。

    还有一些平台指定的语言,要用这个平台就是必学的,比如js对于网页前端,objective-c对于ios。
    reus
        8
    reus  
       2011-06-05 13:35:57 +08:00
    来学编译技术吧,自己做语言,自己选面向的vm,.net, jvm, cpython, llvm之类的。
    ethan_kang
        9
    ethan_kang  
       2011-06-05 13:40:09 +08:00
    语言只是工具,应该根据不同的目的使用不同的工具。
    如果是纯粹的语言爱好者,那我建议选择一些发挥空间比较大,语法优雅,并且充满乐趣的语言。
    比如:Ruby,C/C++,Python,JS等。
    iiduce
        10
    iiduce  
       2011-06-05 13:50:11 +08:00
    我觉着吧, 语言不是学的, 是用的。
    virushuo
        11
    virushuo  
       2011-06-05 14:09:57 +08:00
    C++实在是别学了。有c足够了。
    Hyperion
        12
    Hyperion  
    OP
       2011-06-05 17:16:26 +08:00
    @virushuo c++ 其实是以后考试得用...额

    @iiduce 但语法和弱点之类的经验, 得靠累积吧...

    @ethan_kang 我经常在python和js之间穿越...string对象...data对象...行尾分号...数组对象...等等

    @reus 擦汗...好伟大的理想...

    @chloerei ruby python 翻了下招聘信息, 好像都要有工作或者项目经验啊...
    newblue
        13
    newblue  
       2011-06-05 17:22:00 +08:00
    凑个热闹,你应该修炼深厚的内功,高级语言都是偏向招式的,你还是学汇编吧。

    如果你不急着找工作赚钱争生活费,你应该先找几种觉得合你胃口的学,然后用那些语言去写程序,慢慢的,你就会知道什么语言合适你了。

    别人跟你说,什么语言好,你觉得你可以学好吗?
    bruce
        14
    bruce  
       2011-06-05 17:22:05 +08:00
    Ruby or Python
    kasuganosora
        15
    kasuganosora  
       2011-06-05 17:25:05 +08:00
    最重要的是算法,语言只是个工具而已
    chloerei
        16
    chloerei  
       2011-06-05 18:05:58 +08:00
    @kasuganosora 奥,请问您从事什么行业需要用到重要的算法?
    xuwenhao
        17
    xuwenhao  
       2011-06-05 18:16:53 +08:00
    多花点时间看Javascript吧,先通一项是很重要的
    kasuganosora
        18
    kasuganosora  
       2011-06-05 18:44:18 +08:00
    @chloerei 软件工程师而已.如果有好的算法基础的话 ,解决一些问题会比较快.语言的话 通一门,其他的也很快通
    Hyperion
        19
    Hyperion  
    OP
       2011-06-05 18:46:52 +08:00
    @newblue 基本每种都搭上了一点, 写个点简单的东西没什么问题... 而且我基本不挑食, 上手基本都没什么问题, 但都只是皮毛而已. 因为没接触实际工作, 所以想来了解一下现实情况- -+

    @xuwenhao js有什么特别的地方么?...
    Hyperion
        20
    Hyperion  
    OP
       2011-06-05 18:57:25 +08:00
    @kasuganosora 有人向我推荐java 有人向我宣传c++... 好像随便选一门实在有点太...

    哪一门语言熟练之后, 转型最快?
    aisk
        21
    aisk  
       2011-06-05 19:16:23 +08:00
    语言是技工的东西,号称精通XX语言,其实与精通车工钳工没有太大区别 要想有所作为而不是成为高级技工的话,还是花功夫在数据结构 算法 操作系统这些方面上吧

    可以先选择实现一个简单的数据库之类的东西,就算是把数据存储在文本也行,就朝这个方向努力吧
    Hyperion
        22
    Hyperion  
    OP
       2011-06-05 19:25:21 +08:00
    @aisk 数据结构...算法... 《算法导论》和《数据之美》两本书已经入手, 这方面已经有一点准备了. 现在可能是锉刀怎么使, 铣床怎么铣的方面的问题了...
    jjgod
        23
    jjgod  
       2011-06-05 19:35:57 +08:00
    我会选择 C 和 Python。C++ 虽然热门,但实际应用中的大型项目都是很谨慎地使用 C++ 特性的,比如 WebKit、Qt、LLVM 和 Google 公开出来的这些以 C++ 为主的项目,所以 C++ 复杂的“奇技淫巧”其实用处不大,如果能够精通 C 的话,基本上差异的部分也能够很快学会,学 Objective-C 这样的简单超集就更没难度了。

    Python 是一门非常好的工具语言,简单干净,没有过多的语法糖,但各类库非常丰富,开发起来速度很快,可以让你专注与程序的逻辑细节而不是繁冗的实现上,锻炼对项目的大局观和平衡感,这是很重要的。

    作为程序员,如果能用好 Python 这样相对比较高级的和 C 这样相对接近底层的语言,那基本上其他语言都不会有什么问题了。

    不过 Javascript 比较特殊,考虑到它的广泛应用,也值得好好学,尤其是大多数人自以为会,其实还没掌握皮毛的情况下。
    kasuganosora
        24
    kasuganosora  
       2011-06-05 19:38:58 +08:00
    @Hyperion C吧 比较简单,没有其他复杂的东东,搞完C后可以看看算法方面的书,然后再弄其他语言也不迟
    Hyperion
        25
    Hyperion  
    OP
       2011-06-05 19:45:36 +08:00
    @jjgod 感谢...很详细...

    python我一定会继续研究下去. C和C++, 我自己更喜欢C.

    Javascript, 我现在基本会操作原型对象, 但写东西基本要靠mootool或者jquery, 纯js写还得依靠一下手册... 不知道算不算懂了点皮毛...汗! 惭愧...
    Hyperion
        26
    Hyperion  
    OP
       2011-06-05 19:51:58 +08:00
    @kasuganosora 嗯... 感谢... C语言, 我还有内存管理这一大块没有啃下来...
    newblue
        27
    newblue  
       2011-06-05 21:17:32 +08:00
    @Hyperion 我建议是你多写写比较好。

    编程语言基本都差不多,写程序基本是数据结构和算法,只要数据结构和算法能应用得好的话,用什么语言都是一样的,只有语言本身的限制而已,不同场合挑选适合的工具很重要,所以把两三种用好,再适当的涉猎一些其他的语言,并不是一件难事。
    Hyperion
        28
    Hyperion  
    OP
       2011-06-05 22:01:11 +08:00
    @newblue 恩... 了解! 数据结构和算法...才是通用的...
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2415 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 15:47 PVG 23:47 LAX 08:47 JFK 11:47
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86