zoukankan      html  css  js  c++  java
  • 编程语言学习

    稀里糊涂也学习了几种编程语言了,虽然每种都只是能应付平时工作,看到神奇的用法时仍然要去查查语法。

    每学一门新语言,除去语法规则,其中最常用的最需要熟练掌握的东西,却都是差不多的。小记一下,以后再学新语言也可以有所专注,能够快速上手。

    1.数据结构

           对于每一门语言,内建的一些数据结构是最最常用的,数组,链表,队列,栈,hashmap等

           c语言表示,除了数组,偶啥都没有内置,想用都得自个来。不过,虽然如此,开源项目里面,依然已经实现了不少通用的数据结构,让我们可以专注于业务,而不是数据结构。glib,Apache Portable Runtime都是其中的代表。

           c++,stl/boost实现的vector,list,hashmap等模板类

           java,基本就是jdk中内置的utils包里面的LinkList,ArrayList等

           python,更是直接内建到语言级别,List、Tuple、Dictionary以及Set,几乎就是上述说到的数据结构的最常用的。

    2.字符串处理

           每门语言字符处理都是一个深深的坑,连c语言的标准库都需要把strcpy,strlen,strcmp这种函数放进来,就知道字符处理对一门语言多重要了。

           c++自然又是stl里面的string类,比c的标准库更加强大。

           java的实现略显繁琐,除了String,还有什么StringBuilder,StringBuffer,在小心其中的场景,不然小心程序内存增长性能不够

    3.文件IO

          通常说来,这个其实是操作系统提供的功能,不过语言为了方便操作文件,都封装了不少的接口。

          C语言就是标准io库,fopen/fread/fwrite/fclose/fseek/ftell函数族,当然还可以直接用open,read,write等os接口。

          C++搞出了IOStream这套东西。不太好用

          java io更是把C++的Stream又更进了一步,inputStream,outputStream两大接口,涵盖了文件io,内存io等等操作,是个深坑。不多说,来个图吧

    javastream

    4.网络编程

          这个更是操作系统提供的功能。

          c和c++都可以直接使用socket函数族。不过开源项目已经实现了太多的协议实现,不过这个就跟语言学习无关了,针对具体的项目,学习不同的库的使用即可

          掌握socket的过程和tcp/ip的状态切换就好。

    5.接口抽象

            c语言是函数指针

            c++是纯虚函数,virtual

            java是interface

  • 相关阅读:
    关于java异常处理的自我学习
    html学习
    java第七周动手动脑
    作业
    动手动脑
    我要建立自己的java代码仓库
    第三周作业
    day0319 模块
    day0318装饰器和内置函数
    day0315 迭代器
  • 原文地址:https://www.cnblogs.com/mr-nop/p/5309099.html
Copyright © 2011-2022 走看看