对一门语言学习哪些地方 -- 总结几门编程语言有感
来源:互联网 发布:python combination 编辑:程序博客网 时间:2024/05/07 11:33
下面简单罗列了一共5门编程语言(Java、C++、Python、Perl、Lua)的基本知识要点,进而对“学习一门新的编程语言时会去学习哪些地方”做了一些探讨和预测。
Java
1. 基本数据类型、流程控制语句
2. 包
3. 类、接口、继承、多态
4. 反射
5. 多线程
6. 数据库(JDBC)
7. 网络通信
8. Swing、AWT
9. 杂项:
1) 数组
2) 字符串处理
3) 数字处理类
4) 集合类(Collection、List、Set、Map)
5) 包装类(Integer、Boolean、Byte、Character、Double、Number)
6) I/O (Stream, File, FileInputStream, FileOutputStream, BufferedInputStream, BufferedOutputStream, BufferedReader, BufferedWriter, etc.)
7) Exceptions, Assertions, Logging, Debugging
8) Generic Programming(泛型编程)
9) 其他:JavaBeans、Security、Distributed Objects、Native Methods
---------------------------------------------------------------------------------
C++
1. 基本数据类型、表达式、流程控制语句、指针
2. 函数、域和生命周期、名字空间
3. 类、操作符重载、继承、多继承、虚拟继承
4. STL
比如:
1) 抽象类型容器(vector、迭代器、string、map、set、multimap、multiset、iStack、etc.)
2) 泛型算法(查找、排序、删除和替换、排列组合、关系算法、集合算法、堆算法、etc.)
5. 杂项:
1) 异常处理
2) iostream
3) 函数模板,类模板
-------------------------------------------------------------------------------------
Python
1. 操作符、基本数据类型和数据结构(变量、字符串、数字、列表、元组、字典)、流程控制语句
2. 函数 和 函数式编程
3. 模块
4. 类
5. 网络通信
6. 数据库
7. 图形界面(GUI)
8. Web编程
9. 杂项:
1) 文件操作
2) 错误和异常
3) 执行环境
4) 正则表达式
5) 多线程
------------------------------------------------------------------------------------
Perl
1. 操作符、流程控制语句、函数
2. 正则表达式
3. 引用
4. 数据结构:数组、Hash
5. 包、模块
6. 类、重载、绑定变量
7. 杂项:
1) unicode
2) 进程间通信
3) 多线程
----------------------------------------------------------------------------------
Lua
1. 表达式、基本类型、基本数据结构(table)、流程控制语句
2. 函数、闭包
3. 包 与 模块
4. 正则表达式
5. 类(模拟:元表、元方法)
6. 协程(coroutine)
7. 与 C/C++ 相互的调用
6. 杂项:
1) 字符串处理
2) 迭代器、泛型for
3) 数学库、IO库(文件处理)、操作系统库、table库
----------------------------------------------------------------------------------
共性(即学一门编程语言一般会去学些什么):
1. 操作符、基本数据类型、流程控制语句、函数
2. 基本都支持类
3. 一般都支持如下杂项:
1) 文件操作、流操作
2) 异常处理
3) 字符串处理
4) 正则表达式
5) 集合类(如C++的STL的容器、Java的集合类(Collection、List、Set、Map)、Python的集合类(如collection等)等)
4. 一般稍强些的语言支持如下的系统编程的特性:
1) 网络通信
2) 数据库编程
3) 多线程
4) 图形界面
特性(即编程语言从语法角度来说自身的特点):
1. 数据结构的表示在各个编程语言中各不相同。
比如,Python中有列表、元组、字典以及各种库中的类(如Collection)等,Perl主要是数组和Hash,C++主要是自定义struct,而Java也主要靠其库中的类。
2. 对于包和模块的概念,略有不同
3. 对面向对象支持的强度不同
4. 是否支持函数式编程
- 对一门语言学习哪些地方 -- 总结几门编程语言有感
- 几门编程语言的学习网站
- 如何学习一门编程语言
- 如何学习一门编程语言
- 如何学习一门编程语言
- 池建强:如何学习一门编程语言
- 快速学习一门编程语言
- 如何学习一门编程语言
- 如何学习一门编程语言
- 怎样学习一门编程语言
- 如何学习一门编程语言
- 快速学习一门编程语言
- 论如何学习一门编程语言
- 学习编程语言总结
- 如何有效的学习一门编程语言 总结(持续不定时更新)
- JX8NET 学习编程至少要掌握一门编程语言
- 【C#语言学习】学习一门语言
- linux C语言网络编程学习总结< 一>
- zoj 3826 Hierarchical Notation(模拟)
- 为何不让GitHub给你的简历添色加彩呢?
- 基于SAE搭建python微信公众后台
- 胡想——对机器人控制体系的一些想法
- Android应用开发--MP3音乐播放器Service实现
- 对一门语言学习哪些地方 -- 总结几门编程语言有感
- Android Studio使用原生反向地址编码方法和使用百度地图SDK的对比以及遇到的问题
- js学习笔记___基本数据类型与使用
- C# 6.0 (C# vNext) 新功能之:Semicolon operator
- Android应用开发--MP3音乐播放器滚动歌词实现
- mysql启用、禁用外键约束
- 事孛讶内举悼释尾旁宋疵邓谭托鞘
- zoj 3822 Domination 概率dp
- 黑马程序员-OC语言中的两个关键字self和super