美文网首页
2013学年总结之语言篇

2013学年总结之语言篇

作者: 码农苍耳 | 来源:发表于2016-04-25 23:18 被阅读57次

    本篇为总结之前了解的一些语言与特性,当然,我并不是语言专家,大部分都是走马观花,难免有纰漏之处。

    java

    作为一个纯粹的面向对象语言,java应该是非常的典型的,而且不像c/c++,也不像Objective-c一样需要我们手动管理内存,这大大降低了我们学习和使用成本。同时有大量的完整的类库和跨平台的能力,所以Google选择java作为android的语言实在是完美。

    先说说特性,因为所有类型都是对象,所以基本类型还是具有自动装箱拆箱的功能。最有意思的是java的内部类,它提供了另外一种回调的方式。

    但是java也有很大的缺陷,最大的缺陷是性能,如果Google能够推广最新的JIT技术,那这个问题会减轻很多。同时,java也是一种非常啰嗦的语言,甚至比Objective-c还要啰嗦,OC只是名字比较啰嗦而已。

    cpp

    c++怎么说呢,本来就不是纯粹的面向对象语言,为了兼容c,在一些方面不得不做一些让步。但是也有很多有意思的特性,比如操作符重载,隐式转化,智能指针等等。同时c++强大的模板和模板元编程,又让c++成为了更加强大而有技巧的语言。当然,这也大大增加了学习成本和难度,同时写法上也不够简明易懂。

    Sql

    这个什么都不用说了吧,应该算是基本技能。概括起来:

    CREATE TABLE
    SELECT
    INSERT
    DELETE
    UPDATE
    ALTER
    

    lua

    这是一门特别轻量级的语言,以及及其简单的语法和数据结构,所有数据都是字典类型,同时又有一定的面向对象的能力。当然,缺点也是非常明显的,作为一门独立的语言,功能还是太弱,也缺少相应的类库,所以只能嵌入程序中使用。

    虽然说是一门脚本语言,据说效率很高,至于它很快的原因,是否使用了JIT技术,这个还可以继续研究下。

    javascript

    怎么说,最常见的脚本语言,大家都熟悉,语法上像极了java,所以用起来也可以说是得心应手,但是要用到javascript的面向对象却非常复杂,javascript是基于原型来描述面向对象的,所以javascript里面没有class,所有的class都是实例对象,导致看起来总感觉怪怪的。

    javascript最好用的地方莫过于他的函数式编程了,可以说闭包和函数式编程才是javascript吸引人的地方。

    Node.js

    Node可以说是javascript服务端(也是本地)的实现,而且使用了V8引擎,不过这个标准目前还不那么稳定,不过他在服务器端优秀的表现,绝对是有值得了解的必要。

    python

    这是我非常想学的语言,并不是说Python有多么完美,而是Python既拥有脚本语言的特性,又能够很容易的使用面向对象。他避免了shell脚本晦涩难懂的语句,同时增强了字符串等操作,所以完全可以使用Python来替代shell脚本,而Python一般是linux和unix的标配,所以应用也很广泛。

    Python能够很好的支持面向对象,而且语法简单,所以除了做shell脚本外还能支持大型项目。完善的包管理机制也同样提供了很多方便。可以说在这方面Python完全可以代替java,但是由于Python是一门弱类型语言,所以在一些调试和代码检查方面可能会差一点。

    Python中比较有意思的一个是函数装饰器,像@static_method,这个思想倒是值得我们借鉴。另外还有with的语法也比try...catch...简洁很多。可以说Python非常适合做模型。

    Liquid

    这是一门模板语言,目前github上的page就是用jykell+liquid完成的,而且它还和django的模板语言特别相似。当然,模板语言的弱点十分明显,可以说都算不上一门语言。除此之外还有很多模板语言,使用也非常简单。

    HTML/CSS/Less

    对于想了解网页方面知识,这个应该是基础的基础,作为标签语言,也非常简单,没有什么特别的技巧,但是对于布局却是一个启发,像android那样的布局,对多尺寸适配会方便很多。

    Less作为对css的一个补充,还是非常不错的,可以减少很多的工作,还能编译完再发布。

    Markdown

    作为一种简化版的富文本编辑方式,非常简单易懂,比使用html更简单,也比使用word之类的更灵活,还能直接转换为html,程序员必备。

    django & express

    这两个分别是基于Python和Node的一套网站框架,django比较成熟,已经有很多的人在使用,基本功能都已经包含。express比较新,一些功能可以通过包来安装。

    相关文章

      网友评论

          本文标题:2013学年总结之语言篇

          本文链接:https://www.haomeiwen.com/subject/mixqrttx.html