Coder Social home page Coder Social logo

cashbook's Introduction

题目要求: 参考常用的记账工具软件的功能,要求在 Android Studio 开发环境下开发一个可用于安卓手机或安卓平板设备上的记账本 APP。 APP 应该实现以下几个功能: 1.点击主界面中的“记一笔”按钮后,跳转至记账页面,输入金额、开销类别(娱乐、餐饮、教育、服饰等等)、备注、日期、账目性质(支出或收入)等信息后,点击“保存”返回至主页面;其中分类信息应该通过 Spinner 列表选择。 2.主页面中以列表方式显示出所有保存下来的账目的缩略信息。如果点击其中某一条账目,能够跳转到账面详细信息页面,详细的显示该条账目的所有信息,并能够重新编辑该条账目信息。 3.账目信息存储在数据库文件中,数据库文件采用代码建库方式创建,账目的增、删、改、查都通过数据库操作实现。 4.能够根据用户要求分别按照日期(月或天)、开销类别统计流水总额。 以下具体实现方案难度由易到难递增,根据实际选择的方案难度给项目起评分: 1)账目数据存储在手机本地数据库中; 2)账目数据存储在服务器中(例如:云端数据库)。

本项目用到三个插件。 1.ButterKnife(https://github.com/JakeWharton/butterknife) ButterKnife是一个专注于Android系统的View注入框架,以前总是要写很多findViewById来找到View对象,有了ButterKnife可以很轻松的省去这些步骤。是大神JakeWharton的力作,目前使用很广。最重要的一点,使用ButterKnife对性能基本没有损失,因为ButterKnife用到的注解并不是在运行时反射的,而是在编译的时候生成新的class。项目集成起来也是特别方便,使用起来也是特别简单。 ButterKnife的优势: 1、强大的View绑定和Click事件处理功能,简化代码,提升开发效率 2、方便的处理Adapter里的ViewHolder绑定问题 3、运行时不会影响APP效率,使用配置方便 4、代码清晰,可读性强 2.MMKV(https://github.com/Tencent/MMKV) MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。从 2015 年中至今在微信上使用,其性能和稳定性经过了时间的验证。近期也已移植到 Android / macOS / Win32 / POSIX 平台,一并开源。 3.QSHttp(https://github.com/tohodog/QSHttp) 一句代码联网,参数控制方便,支持泛型回调,使用简单 多年生产环境迭代,稳定可靠 支持http/自签名双向https(get post put head...) 文件上传、下载、进度监听、自动解析,基于Okhttp的支持cookie自动管理,缓存控制 支持自定义有效时间缓存,错误缓存(联网失败时使用) 详细的请求信息回调、错误类型(网络链接失败,超时,断网,解析失败,404...) 详细的访问日记打印,非常方便调试 支持多拦截器,可添加一些公共鉴权参数... 模块化设计,联网模块可更换,目前提供OkHttp和java原生两种实现

本项目用腾讯云服务器来搭建APP后端,系统为CentOS7.6,环境为:Nginx 1.16+PHP7.2+MySQL5.7,使用ThinkPHP6.0框架编写API接口。 ThinkPHP是一个免费开源的,快速、简单的面向对象的轻量级PHP开发框架,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简代码的同时,更注重易用性。

cashbook's People

Contributors

wdpfm avatar

Stargazers

 avatar  avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.