初涉通信的一些感受和想法5
本来这几天一直想写总结,却又发现写不出什么。总的来说,这几天情绪起伏还是比较大的,经历了一个从烦躁到平静的过程。
照旧例还是先谈非技术性的东西吧
1.发现编程的时候如果不静下心来编的话很难编出好东西
1.自从8月1号休息后心就开始散了,小组项目坑爹版三国杀没经过大脑思考就照着以前的Xmpp聊天的过程写了,结果写到发牌的时候才发现这种设计完全是错误的。
2.在公司的时候,总是想着打球,打得累了,也就不想写了,记得胡_总要我们留到写完一个简单操作SQL语言的界面才能走的那天,我为了完成任务写了各种static,当然也出现了各种bug,心里一直在呐喊:怎么还运行不出来啊!第二天再看那个程序,结构混乱,注释没有,一不爽就删掉了,结果还是得工工整整地重写一遍。
3.还是通宵爽啊,一点影响都没有,思路变得很清晰,整个流程行云流水。
2.设计的重要性
这几天可谓是尝尽了没有设计的苦头,做项目的时候,只是大概想个流程,然后花大部分时间在想算法怎么实现。结果总是失败,出错了也不知道哪里出了错,只能重构代码。还好现在是初级阶段,虽然出了错,但在重构的过程中还是发现了自己的很多不足之处和一些冗余的算法。写程序前看来还是得像胡_总说的那样,先从大处着眼,再从小处着手啊!先把整体构架搞出来,再添加细节就易如反掌了,而且还有一个很大的好处就是方便测试和修改,每添加一个细节就增加一个包,并写一个说明文件说明添加了什么细节,这样出错了就能立刻发现问题所在。(ps:今天已经是第四次重构了,希望明天的测试不要出错啊!)
3.寻找自己的发展方向
这几天一直在思考自己在编程的时候应该追求什么?是代码质量?是算法?是设计?最近一直吃设计的苦头,所以暂时打算对设计模式好好发展发展。反正我觉得每个人都应该有自己的专攻方向,这样才能发展得更高,才能有自己的特色。
4.注意测试
凡是有数据的地方都打印一下
5.不需要太多的注释
太多的注释造成逻辑上的混乱和思维的疲倦还有情绪的不稳定……只需要在关键的流程上写一个注释就可以了,至于它是怎么实现,是如何实现的没有必要去注释
很多天没写总结,知识点有点杂
1.写卡牌游戏不能不知道的工具类:Collections
乱序:Collections.shuffle(集合名); 将摸牌堆乱序
复制:Collections.copy(集合名1,集合名2); 可将弃牌堆复制到摸牌堆
将后x个元素移到前面 或将前x个元素移到后面:Collections.rotate(集合名,移动距离); 可以得到主公位置后,可在不改变座位顺序的情况下将分配到主公的角色移到集合的第一位
2.JDBC编程,没想到还是逃不过数据库的学习,后悔啊,学校的课一节都没听过,各种恶补中……
SQL语句,熟能生巧,都是些死东西,但是万一记错的话排错的时候会很纠结……:
查询 select
DDL create,alter,drop,truncate
DML insert,update,delete
DCL
约束:
not null 非空约束
unique 唯一约束
PRIMARY KEY 主键约束,唯一标识该条记录
FOREIGN KEY 外键约束,指定该列记录从属于主表的一条记录,为了保证从表参照的主表存在,通常应该先建主表
CHECK 指定一个布尔表达式,指定对应列的值 (ps:MySQL不支持,MySQL有很多东西都不支持啊,比如说列级约束语法(teacher_id int foreign key)来建立外键约束不会生效,必须用表级约束(foreign key(teacher_id))
优先级:
比较运算符>not>and>or
JDBC编程步骤:
0.引入jar
1.加载驱动
2.建立连接
3.得到Statement/PreparedStatement(可防止sql注入)/CallableStatement对象
4.执行语句 execute/executeUpdate/executeQuery