您好,欢迎访问三七文档
当前位置:首页 > 金融/证券 > 金融资料 > P2P金融项目课件讲述
P2P金融项目传智.悟净p2p金融相关业务知识•什么是p2p金融•P2p金融当中的个人与个人2者之间的角色关系•了解p2p的起源•P2p金融借贷模式及发展现状•投资p2p金融的风险什么是P2P金融•P2P金融又叫P2P信贷•p2p:persontoperson;信贷:信用贷款•P2P金融指个人与个人间的小额借贷交易,一般需要借助电子商务专业网络平台帮助借贷双方确立借贷关系并完成相关交易手续。P2P金融的角色关系信贷=信用贷款,既然是信用贷款,那么就存在2个角色,一个是借款者,一个是借出者。在网络平台当中,借款者可自行发布借款信息,包括金额、利息、还款方式和时间,实现自助式借款.p2p金融业务当中,借款者和借出者的关系是1对多的,1—N;了解p2p的起源尤努斯:全名穆罕默德·尤努斯(1940-06-28),孟加拉国银行家、经济学家,教授。开创和发展了“小额贷款”的服务,专门提供给因贫穷而无法获得传统银行贷款的创业者。孟加拉乡村银行(也译作格莱珉银行)的创建人。因为创建了这种“专门提供给因贫穷而无法获得传统银行贷款的创业者”贷款模式,1983年创建了,格莱珉银行,2006获得了诺贝尔和平奖.P2p金融借贷模式及发展现状借贷模式:主要有2种,一种就是线上网络平台(咋们开发的app软件),还有一种传统线下的P2P金融。发展现状:06年被创造到现在不到10年的时间,发展特别迅速,发展至今,中国的网络借贷平台已经超过2000家,其中做的最有名的几家:宜信、人人贷、你我贷、金融宝等等。投资p2p金融的好处好处[p2p金融发展快速的原因]:1:对于投资者(借出者)而言,获得比存款到银行更高的收益。2:对于有资金需求的企业主(借款者)而言,在P2P金融信息服务平台仅靠点击鼠标输入相关信息就可完成借款申请、查看进度以及归还借款等操作,极大提高了企业主的融资效率。3:对政府相关部门来说,这种模式都是网上公开进行的,所有平台交易数据随时透明可查,在利息税收和借贷利率方面更能轻松监控和监管。4:对社会来说,这种模式提高了资金利用率,遏制了高利贷的滋生和蔓延,有利于经济发展和社会稳定。投资p2p金融的风险•风险:•跑路…•P2P公司跑路,这样的新闻经常会有,所以如果我们想作为投资者,通过p2p平台获利的话,就要选择行业标杆的公司(宜信…),但总结来讲,入市虚谨慎。了解公司产品研发团队构成•产品+UI+开发+测试+运营•接口文档的输出产品研发流程•产品:统筹产品,制定总的作业周期,输出产品方案,交给UI•UI:设计,输出效果图、切图,交给产品经理审核,审核通过,产品通知开发团队。•开发:项目经理+服务器+IOS+Android较完善的团队,项目经理根据产品的作业周期,指定开发周期,分工协作,然后就码代码……•测试:测试开发提交的产品,测试通过,交给运营•运营:负责产品上线,宣传等相关工作。接口文档•什么是接口文档开发阶段,服务器需要为移动端提供接口文档,方便统一接口访问规范….而在p2p金融产品中,接口当中的请求与返回参数通常都是需要加密进行的举例,我们公司的接口文档加密规则是(登录接口Md5加密、具体接口具体参数RSA加密)•输出接口文档的必要性对于移动端开发人员而言,服务器的同事提供一份接口文档是充分必须的工作,因为我们所有对于发往服务器的请求就全部都有了明确参照。有经验的服务器开发人员都会提供接口文档。•举例关于加密•MD5加密•RSA加密RSA加密•什么是RSA加密RSA加密算法是最常用的非对称加密算法•加密类型解释对称加密非对称加密•普及RSA加密小知识RSA是1977年由罗纳德·李维斯特(RonRivest)、阿迪·萨莫尔(AdiShamir)和伦纳德·阿德曼(LeonardAdleman)一起提出的。RSA就是他们三人姓氏开头字母拼在一起组成的。MD5加密•MD5加密的概念MD5的全称是Message-DigestAlgorithm5,在90年代初由MIT的计算机科学实验室和RSADataSecurityInc发明,经MD2、MD3和MD4发展而来。•它是哪种加密类型?根据特点决定•MD5加密的特点•开发中如何使用MD5加密[MD5Utils工具类]项目演示•项目演示•需求分析•绘制整体代码结构图项目演示截图[1]项目演示截图[2]需求分析App启动页---app欢迎页----主界面主界面:•三大模块:首页,我要投资,我的资产•了解每一个模块要做的东西绘制整体代码结构图[1]绘制整体代码结构图[2]绘制整体代码结构图[3]搭建代码整体结构•MainActivity的主布局分析绘制•Fragment的hide与show•BaseActivity的抽取–[放在抽取部分]•公共头布局的绘制•AppLication类与UIUtils类的编写•AppNetConfig统一接口请求配置常量类•AppManager统一actiivty栈管理•App程序当中的全局异常捕获MainActivity的主布局分析绘制根据绘制结构图,MainActivity=4个Fragment+底部tab控制栏布局绘制技巧:权重的使用Fragment的hide与show为什么进行Fragment的切换,不选择使用replace()来代替fragment?每次切换的时候,Fragment都会重新实例化,重新加载一边数据,这样非常消耗性能和用户的数据流量。所以通过切换时hide(),add()另一个Fragment;再次切换时,只需hide()当前,show()另一个,这样就能做到多个Fragment切换不重新实例化。BaseActivity的抽取什么是抽取:抽取:相同的行为做统一的实现,具体的行为细节做抽象定义。BaseActivity的抽取:将所有子类activity做的相同的事情抽取到baseActivity当中做统一实现,然后将不同的部分进行抽象实现。公共头布局的绘制•为什么要绘制公共的头布局通过效果图(项目演示),可以看到所有activity布局的头基本都是一样的,只有一些很小的部分不同,而这些不同的部分,完全可以通过代码设置解决掉,那么当每一个activity在绘制头布局的时候,只需要include同一个文件即可,而不需要在每一个activity所包含的布局内部再绘制一遍。AppLication类与UIUtils类的编写为什么需要这2个全局工具类,换言之,写这2个全部类有什么好处?Application类里获取的Context,handler对象可以被当前Module里的任何类库引用到,而不必在需要用到的时候去new对象或者是通过构造传入。Application类里获取的主线程和主线程Id对象可以在当前Module任意的地方,判断当前代码是否运行在主线程当中,或者将一段代码指定在主线程当中运行。UIUtils:顾名思义,专门提供为处理一些UI相关的问题而创造的工具帮助类。每当需要将xml对象转换成view对象、Dp与px的单位转换、获取valuse当中的XX资源等都可以放在这里边,进行统一获取,而避免了每次都写了几行重复的代码去获取结果。AppNetConfig统一接口请求配置常量编写AppNetConfig常量类,可以非常方便直观的查看以及管理App中所有发起的服务器请求信息,比如服务器切换开发阶段通常访问的都是测试服务器地址,而当开发完成,发包给测试人员测试的时候,就需要切换到正式服务器地址了。具体某个接口的访问地址当公司新来了XX开发人员,他想查看某个界面的数据信息是来自于哪个接口请求的时候,只需要知道有这么一个常量类,就非常简单了,而不需要去具体的activity当中去查找代码了。AppManager统一actiivty栈管理栈的概念:堆栈,专业术语上说,它是一种运算受限的线性表,限制是仅允许在表的一端进行插入和删除运算,注意是一端。这一端被称为栈顶,相对地,把另一端称为栈底。通俗解释:可以认为是一个水缸,是有缸底的,无论是进水还是出水,都只能从一端进行。特点:先进后出App程序当中的全局异常捕获•认识UncaughtExceptionHandlerUncaughtExceptionHandler接口用来捕获运行时未被程序捕获异常.•获取与设置系统默认未捕获异常处理器获取:Thread.getDefaultUncaughtExceptionHandler();设置:Thread.setDefaultUncaughtExceptionHandler(this);•自定义实现类处理程序运行时的未捕获异常设计单例application当中注册非主线程当中进行消息处理首页模块•自定义Scrollview的伸缩回弹效果•viewpagerIndicator类库的引入及使用•Viewpager与circlePageIndicator制作轮播图广告•自定义绘制动态圆环进度条•自定义ProgressBar进度条样式•9path背景图片的editText输入框自定义Scrollview的伸缩回弹效果•分析:[画图+笔记+操作演示]•关键思路:布局加载完毕,获取操作的布局view重写onTouchEvent触摸事件•关键Api方法:Rectnormal=newRect();normal.isEmptynormal.set(left,top,right,bottom);inner.getMeasuredHeight()getHeight()getScrollY();viewpagerIndicator类库的引入及使用•在androidstudio中引入一个library都是通过importmodule来完成的•步骤:1:importmode导入library库2:projectstructure添加module库依赖搞定[*:可查看library的build.gradle文件确保module类型确实是com.android.library]添加module依赖截图Viewpager与circlePageIndicator•了解pageIndicator不同实现类的含义tabPageIndicator:tab选项卡指示器circlePageIndicator:圆形指示器,通常用于制作广播轮播图•用法是一样的,根据需求摆放圆点指示器的位置自定义绘制动态圆环进度条•分析效果实现原理核心思路:绘制外圆+中间百分比文字+弧形进度圈•回顾自定义控件的自定义属性类型reference、color、boolean、dimension、float、integer、string、enum常用•圆环进度的自定义属性在values文件夹中,创建attrs.xml文件,定义/declare-styleable节点的xml资源代码中获取自定义属性:TypedArraymTypedArray=context.obtainStyledAttributes(attrs,R.styleable.RoundProgressBar);…….mTypedArray.recycle();---?为什么需要调用recycle()为什么在TypedArray后需要调用recycle1:如果不调用当我们没有在使用TypedArray后调用recycle,编译器会提示“ThisTypedArrayshouldberecycledafterusewith#recycle()”2:调用recycle的原因这个可能在面试的时候会用到自定义ProgressBar进度条样式•Style属性指定为水平样式,默认是圆style=“?android:attr/progressBarStyleHorizontal”•ProgressBar指定一个drawable资源作为进度条的背景以及进度。•了解layer-list层级样式列表的用法9path背景图片的editText输入框•9patch工具的使用•示例制作一张9patch图片•示例写一个临时demo小程序显示9patch图片的使用我要投资•fragment当中使用tabPa
本文标题:P2P金融项目课件讲述
链接地址:https://www.777doc.com/doc-3812056 .html