Android 开发第一项目——计算器的开发记录
2017.4.1
今天布局界面基本完成,现在写了一点事件绑定。计划是多用动态绑定,随时用随时改。关于布局方面,昨天弄到很晚,原因是Layout使用错误,用的自带的,没仔细看,预览的时候没有问题但是真机调试就出错。是兼容性问题,很多的安卓系统不支持constrainlayout(6.0不支持不要问我为什么知道)。改用LinearLayout,简单嵌套了一下,主体还是用了几个LinearLayout分别写了每一行,其中用了几个LinearLayout用来调整按钮间隙。然后稍微调了字号和对齐方式。
2017.4.2
今天简单写了整数的加减乘除,为了看一下这种实现方法是否可用,但是没有写清零,这就导致了一个问题,如果后台没有关闭程序就会一直将最后的结果一直作为底数运算,并且没有运算符连接,会造成蜜汁错误。还有,在学长的提醒下,发现了double和int型数据在连接字符串中的不同,在以后写double的时候一定要注意。
2017.4.3
今天写了后退,考虑以后写double型的时候进行相同的判断。int型有很多的不足,尤其是开平方的时候涉及到强制类型转换,需要尽快将数据类型扩展到double。关于正负号和小数点还没有写。
2017.4.6
这几天主要是把数据类型改了double,今天完成小数点部分,连加之类的运算完成,但是真的不知道怎么办自动清空啊...感觉和连加之类的十分冲突,但是Windows计算器就是能这样的啊...其实也就是这样吧,突然觉得写计算器还好。
2017.4.7
各种连加完成,就差数值判断和自动清空了啊!还有就是让按钮不能按,这个还好,还好...(已经解决)争取周日前完成初步,然后面对脚本...之前让冬宇给我先乱按一通。
数值判断完成!就差自动清空了啊!!!大写的绝望
2017.4.9
初步版本完成,拿去测试。
2017.4.13
第一次测试测了19个错误,很难过。6个小时修改了4个BUG,还有至少两个BUG等着我。做完去睡觉
真的觉得会被打,代码量太多了,必须要修改。主要是各种按键重复代码过多,比如数字键还有功能键,用相似的代码应该就可以。除此之外,我的逻辑也比较复杂,判断用的变量也挺多的,而且可能还有没考虑到的地方。非常累,感觉计算器这种东西并不适合我的样子。
2017.4.14
代码量从2300缩小到600左右,bug也有修复,但是关于正负号和小数点还是有问题。bug13个,有一个只是我忘了改某一部分的代码(忘了复制粘贴),大体的逻辑没问题,就是带小数点以后输入0这个问题...有点可怕。尽量改,尽量早睡,嗯,只是尽量。
2015.4.15
改了BUG,昨天的问题基本解决,准备进行提交前最后一次测试。
还好,11个BUG,算是我之前几次通过的几个这次又出错了...觉得有点浪费机会,但是修复很快,自己也发现了一些其他的BUG,出错的最终应该会大幅下降一些。快做完这个项目了,觉得这次对自己算是一次很不错的提高吧,尤其是前几天的2300多行代码,虽然行数很多,但是主体的逻辑都是在这里实现的,后面重写的还是对这个逻辑的补充吧。其实写到后来,对于能出多少错已经没那么在乎了,更多的是对测试数据的好奇吧(虽然平常自己也有乱按)。之前也有过接近崩溃的时候吧,不过不管怎么说,都过去了不是吗。
Android 开发第一项目——计算器的开发记录的更多相关文章
- 循序渐进开发WinForm项目(6)--开发使用混合式Winform模块
1.Winform数据访问模式定义 传统的Winform程序模块:用于传统的数据库通讯获取数据,这种方式获取数据,方便快捷,可以用于常规的业务系统的场景,用于单机版软件或者基于局域网内的业务系统软件. ...
- android 串口开发第一篇:搭建ndk开发环境以及第一个jni调用程序
一:ndk环境搭建 1:开发环境 我使用的是android studio 2.3.3版本,搭建ndk开发环境比较简单,打开File----Settings----Appearance&Beha ...
- Eclipse安装Git插件以及通过Git导入华为软件开发云项目
--内容提交-- 1. Eclipse安装Git插件 2. 在Eclipse中导入华为软件开发云项目, 以及常用Git操作 一. Eclipse安装Git插件 现在从eclipse官网下载 ...
- vsCode开发flutter项目
Visual Studio Code 安装: 下载链接:https://code.visualstudio.com/ 下载完成后根据步骤自行安装. 使用vsCode开发flutter项目需要部 ...
- iOS开发——高级技术精选&底层开发之越狱开发第一篇
底层开发之越狱开发第一篇 做越狱开发也有一些时间了,有很多东西想总结一下,希望给他人一些借鉴,也是自己对过去开发经历的一些总结.个人不推荐使用盗版,这里主要以技术介绍为主. 这个系列里面主要介绍怎样进 ...
- web前端开发教程系列-1 - 前端开发编辑器介绍
目录: 前言 一. Webstorm 1. 优点 2. 缺点 3. 教程 4. 插件 5. 技巧 二. SublimeText 1. 优点 2. 缺点 3. 教程 4. 插件 5. 技巧 前言 由于很 ...
- 开园第一篇 - 论移动开发环境 IOS与Android的差异
首先,在真正写技术之前做个自我简介.本人08年开始学c语言 一年后,转vc++.开始接触MFC MFC做了两年.转眼11年了我考上了一个不知名的大专.搞C++发现没有市场了因为当时酷狗腾讯的软件已经日 ...
- 安卓开发第一步:Android Studio安装配置
虽然本人是JAVA开发工程师平时主要开发Web App,但因为项目需求需要开发对应的移动端.一时又找不到合适的安卓开发人员,兄弟我只好被项目经理"抓来当壮丁了".俗话说好" ...
- 菜鸟成长日记之新手备忘录-IOS开发第一个项目总结
2013年5月3号,开始找IOS开发工作(自学了大半年,做了一个功能不全的Demo,该出去见见世面了!),5月4号面试了第一家公司(是家刚成立一段时间的外包公司),5月5号第一家公司已二轮电话面试,5 ...
随机推荐
- P1434 [SHOI2002]滑雪
题目描述 Michael喜欢滑雪.这并不奇怪,因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你.Michael想知道在一个区域中最长 ...
- 【JavaScript】for循环小练习
1.输出1-100的和 var sum = 0; for(var i=1;i<=100;i++){ sum = sum + i; } document.write(sum); 2.输出1-100 ...
- ubuntu上传到百度网盘
1 2 亲测可以上传
- Upload a file with $.ajax to AWS S3 with a pre-signed url
转载自:https://gist.github.com/guumaster/9f18204aca2bd6c71a24 生成预签名的Demo文档:https://docs.aws.amazon.com/ ...
- Linux环境配置文件的理解
百度百科: .bashrc这个文件主要保存个人的一些个性化设置,如命令别名.路径等.也即在同一个服务器上,只对某个用户的个性化设置相关. 示例: 编辑# User specific aliases a ...
- C#匿名类型和动态解析减少定义传输类模板
C#作为强类型语言,在序列化和反序列化(json)场景中对字符串解析常常需要定义强类型模板,造成编码上的繁琐.其实可以使用匿名类型和动态解析减少json序列化时候的数据模板定义: string a = ...
- leetcode 二进制求和 python
class Solution: def addBinary(self, a, b): """ :type a: str :type b: str :rtype: str ...
- Gatling实战(一)
对Gatling早有耳闻,据说比jmeter的性能要好很多,我第一次试用的时候因为本机安装的jdk版本不对无法跑起来,试用失败后,因为没时间就一直没继续研究了.我当时是去java官网下载最新的jdk覆 ...
- 自制操作系统Antz(8)——实现内核 (中) 扩展内核
Antz系统更新地址: https://www.cnblogs.com/LexMoon/category/1262287.html 在前几天的任务中,我们已经简单实现了MBR,直接操作显示器和硬盘操作 ...
- hdfs性能调优(cloudera)
参照官方文档:http://www.cloudera.com/content/cloudera/en/documentation/core/latest/topics/cdh_ig_yarn_tuni ...