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 ...
随机推荐
- python之堡垒机(第九天)
本节作业: 通过使用paramiko和sqlalchemy实现堡垒机功能 主要功能实现: 1.用户登录堡垒机后,无需知道密码或密钥可以SSH登录远端服务器: 2.用户对一个组内所有主机批量执行指定命令 ...
- spring boot常见问题
1.什么是springboot 用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件) 创建独立的spring引用程序 main方法运行 嵌入的T ...
- sai u 2016
再过20分钟,我就要结束2016年的工作回家过春节了.真是难过的一天啊,从来没有今天那么感受深刻,那么嫌弃时间太慢,没有归家心似箭,没有近乡情怯,只是好想,呵呵,来个午睡,来场电影,来点小说,哈哈哈. ...
- python numpy 科学计算通用函数汇总
import numpy as np #一元函数 #绝对值计算 a = -1b = abs(a)print(b)输出: 1 #开平方计算 a = 4b = np.sqrt(a)print(b)输出: ...
- centos6.9 PHP的编译安装并连接nginx
1.安装yum -y install libxml2-devel openssl-devel bzip2-devel libmcrypt-devel 解决php包的依赖关系,可能libmcrypt会报 ...
- jQuery实现input框输入值动态搜索
我们在平时的前端开发中,经常会遇到添加数据,如果在添加之前要指定某个用户或对象进行关联,那在实现上要比普通的添加要繁琐一点.我本来的想法是给一个iframe,在 里面显示所有的数据并提供一个筛选的功能 ...
- 1、SpringBoot bean,list,map Json返回
1.Bean public class User { private int id; private String username; private String password; public ...
- MYSQL数据库常用操作命令
1.连接MYSQL: mysql -h 主机地址 -u 用户名 -p 2.修改密码: 安装后第一次登录使用: mysqladmin (因为没有初始密码) 修改原密码: mysqladmin -u ro ...
- 换个角度聊聊FaaS
Serverless/FaaS伴随着k8s的热度增加,也成为了热门话题.相关文章介绍了很多,这里笔者不一一赘述,而是从个人见解上聊聊关于FaaS的架构和意义. FaaS可能的架构优化 从AppEngi ...
- html是什么?一个完整的html代码告诉你(完整实例版)
html什么意思?这篇文章主要为大家仔细的解释了HTML文档的一个基础的完整代码,还有具体的实例解释,让大家能一下就看懂HTML的基础结构和用法.下面我们一起来看看吧一.html是什么?点击查看htm ...