20172301 2017-2018-2 《程序设计与数据结构》第一周学习总结

20172301 2017-2018-2 《程序设计与数据结构》第一周学习总结

教材学习内容总结

  1. 计算机系统的组成
  2. 有关网络的基础知识,包括因特网,万维网,URL
  3. Java编程语言基本了解,包括注释,标识符,保留字
  4. 程序开发和编程语言的了解,包括开发环境,错误还有语义语法

教材学习中的问题和解决过程

  • 问题1:主存储器和辅助存储器的优缺点。
  • 问题1解决方案:百度搜索。
    - 主存储器(内存):主存储器的读取速度快,小,内容断电丢失
    - 辅助存储器(外存):辅助存储器慢,大,断电内容不丢失
  • 问题2:ROM和RAM区别
  • 问题2解决方案:关于RAM与ROM的区别与理解
  • 问题3:URL的各部分含义
  • 问题3解决方案:简述 URL 并分别说明各部分的含义

代码调试中的问题和解决过程

  • 问题1:git push后不能辨别身份
  • 问题1解决方案:根据提示输入相关命令验证用户名和邮箱
    git config -global user.name
    git config -global user.email
  • 问题2:编写Java程序类名和文件名不一致
  • 问题2解决方案:修改类名
  • 问题3:编写Java程序忘记输入分号

    有时候编写代码的时候需要更加细心,因为一个大小写或者一个符号就导致程序运行错误。
  • 问题4:ubuntu 终端复制粘贴快捷键
  • 问题4解决方案:在ubuntu命令模式下 如何进行复制和粘贴
    每个环境下的快捷键都不一样,学会了会更加方便。
  • 问题5:让vim编辑器永久显示行号
  • 问题5解决方案:如何让vim编辑器永久显示行号
    有时候显示行号和高亮很重要,但是我每次编写程序的时候都要在命令行模式下重新设置,很麻烦,所以我设置了永久设置。

代码托管

上周考试错题总结

  • 通过引用地址直接获得存储项的能力被称为 随机存储

顺序存取:就是存取第N个数据时,必须先访问前(N-1)个数据 (list)
随机存取:就是存取第N个数据时,不需要访问前(N-1)个数据,直接就可以对第N个数据操作 (array)

理解:在网上看见了一个很形象的意思,那么看题目就是直接引用地址那就是随机存储。当时对于几个选项概念不清晰。

  • 试图解决问题之前,把一个问题分解成可控制的几部分是很重要的,因为 大多数问题太复杂,以至于不能作为一个单独大型的活动来解决
    理解:解析给出了合理的解释,我们可以把活动分解,但不能分解问题。D项混淆,和题目无关。
  • Java是一个高级语言和第四代语言

第一代:机器语言(打孔机)
第二代:汇编语言
第三代:高级语言,其中分为 一 、 面向过程的编程语言 (如C , BASIC,pascal) , 二 、面向对象的编程语言(如C++ , java ,c# )
第四代:数据库编程语言,如各种数据库的SQL语言

第三代语言

第四代语言

理解:我以为第四代语言就是数据库编程语言,但是实际上第四代语言是与面向对象的进一步结合,那么Java也应该是第四代语言。

  • Java程序中的主方法是由___定义的 C
    A . public static main( )
    B . public static main(String[ ] args);
    C . public static main(String[ ] args)
    D . private static main(String[ ] args)

理解:Java的分号使用确实要注意,并不是所有语句都加分号。也不是都不能加。

public static void main(String[] args) {;

这个语句就可以编译。

  • The instruction: System.out.println("Hello World");这个指令最好被注释为 C
    A . 将"Hello World"打印到屏幕上
    B . 打印一条信息
    C . 用来演示输出信息
    理解:Java的注释不是像AB那样表面上的内容,而是这段代码的目的和意义。

  • 下面哪个是合法的Java标识符? A
    A . i
    B . class
    C . ilikeclass!
    D . idon'tlikeclass
    E . i-like-class
    理解:标识符符号只能用_或者$。class是Java的类名,不能做标识符。尽管“i”有点单调。

  • 程序中的一个错误导致程序输出结果是$100而不是正确答案$250,这是D
    A . a programmer error (程序错误)
    B . a syntax error (语法错误)
    C . a run-time error (运行时错误)
    D . a logical error (逻辑错误)
    E . a snafu (混乱)
    理解:在教材P28,

只要存在编译时错误,就不会得到可执行的程序代码。
运行时错误会导致程序异常终止。
逻辑错误程序可以正常编译和执行,但是得到的结果不正确。

  • 下列Java命名规范中,哪个是关于“store customers”类的最佳命名?A
    A . StoreCustomer
    B . Store Customer
    C . storeCustomer
    D . STORE_CUSTOMER
    E . Store-Customer
    理解:

Java命名约定表明,类应该以大写字母开头,多字名称应该以大写字母开头,而其余字符为小写字母。
单词应该连接在一起而没有空格,或者与“_”字符连接。答案B和E不是合法的名称,并且使用Java命名约定,C可以作为一个变量名,D是一个常量。
命名规则我们要保持如下习惯:
第一,类名是由字母、数字、下划线或美元符组成,且第一个字符不能是数字。
第二,如果用的是拉丁字母,那么名字的首字母使用大写字母。
第三,如果多个单词复合而成,我们习惯上,每个单词的第一个字母大写。

如何定义java的类名?

java 类名也可以用中文 但是并不提倡。

  • Java字节码是可以直接执行的,而Java源代码则不是。 ×

Java源代码和Java字节码都不是可执行的。两者都必须被编译或解释为机器代码。Java字节码是有用的,但是它们是独立于机器的但是半编译的代码,它允许您的Java代码通过Internet传输并在另一台计算机上执行,即使其他计算机是完全不同的类型。

理解:高级语言必须要被编译成机器代码才能被计算机执行。

  • "Public"是一个保留字。×
    理解: Java的保留字区分大小写
    和标识符是一样的

考试总结:第一周因为忙于代码编写,忽略了书本和教材。不应该本末倒置,还是应该多注重细节。书读百遍,手动百遍。

其他

初次接触编程,确实有很大的热忱。有时候会因为一个问题研究很久,但是,那种问题解决后,程序运行后那种成就感让我对程序设计有了更大的兴趣。但是。仅仅凭着兴趣和野心是不够的。最重要的还是日复一日的积累和总结,来寻求更大的进步。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 122/200 1/2 20/20

参考资料:

  1. 在ubuntu命令模式下 如何进行复制和粘贴
  2. 简述 URL 并分别说明各部分的含义
原文地址:https://www.cnblogs.com/gk0625/p/8544553.html