学习C与Java的类比
大学的时候选修过一个学期日语,当时日语老师对我们说:“对于中国人来讲,学习英语一般是哭着进去,笑着出来;学习日语则是笑着进去,哭着出来”。意思就是说学习英语的时候,入门的时候比较困难,但是只要坚持学下去,转变了汉语的思维习惯时,最近可以把英语学得很好。而日语不同,一方面因为其与汉语的紧密关系而在入门时让我们有似曾相识的亲切感,而另一方面又因为其复杂的语法和多变的句型让学习者在逐渐深入的过程中感到举步维艰。
突然想到学习C语言和Java语言有这种相同的感受。在刚开始接触程序设计时,一般都会以学习C语言为基础,因为其结构化的程序设计思想和简单灵活的特点,让学习者可以在很短的时间内运行处自己第一个“Hello,World!”程序。而在学习Java的时候,重点的基础讲解往往放在了面向对象的概念之上,因为无法迅速对类啊,对象啊,多态啊等等多种改进高效地掌握,所以往往即使照猫画虎地打印出了自己的“Hello,World!”,也还是不算得入门。而随着学习的深入,渐渐理解了什么叫面向对象,什么叫封装继承多态,加上一段时间的实践开发,程序员能很快地根据其他辅助的建模工具设计出自己优良得代码。而C语言不同,因为其结构化的设计理念,如果要设计出好的程序,往往需要长久得锻炼,而这个锻炼还需要建立在对计算机底层以及系统结构的理解之上。
所以,也可以这么说“学习C语言是笑着进入,哭着出来;学习Java是哭着进去,笑着出来”。
相关文档:
public boolean writeXML(String content, String filename)
{
String savepath;
FileOutputStream fout;
// log.info("content:"+content+ ......
今天和大家一起学习Java的设计模式。本人的水平不是很高,这系列文章只是自己学习的过程,并希望能同大家分享经验。
先说下我对工厂模式的理解:当我们需要某个对象时,最直接的办法是看到这个对象就拿过来。但是当对象非常多的时候,找起来就很不方便。这时就需要一个中介来帮助我们取得想要的东西,这个中介就是工厂(fa ......
package test;
import java.io.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.SAXException;
public class XmlTest {
public static void main(String[] args) {
File xmlFile=new File("test/xml.xml");
DocumentBuilderFactory documentBuilderFactor ......
VC中下面几个结构体大小分别是多少呢
struct MyStruct
{
double m4;
char m1;
int m3;
};
struct MyStruct {
  ......