基于LAMP构建简易iOS APP的开发方法

2019-07-09 标签:LAMP 浏览数:36

摘要: 随着智能手机的普及,移动APP在公司的推广营销以及吸纳用户方面有着重要作用,故而开发APP的需求十分巨大。该文将基于LAMP架构,探讨构建一个简易iOSAPP的开发方法。

资讯主图

1 LAMP架构

1.1 Linux操作系统

优秀的开源操作系统,向全世界开放,由全世界优秀的程序员维护开发,完全免费,可自由使用,安全可靠且性能出色,Linux是理想的服务器端操作系统。

1.2 Apache HTTP服务器软件

世界上最流行的网页服务器之一,开源且对Linux完美支持,跨平台且稳定、通过插件拓展可支持PHP语言编写的动态网页。

1.3 MySQL数据库管理系统

非常适合小规模数据的处理,较低数量级增删改查的效率很高,开源免费适合个人和小规模团队进行开发。

1.4 PHP网页服务器脚本语言

开源易学,开发框架和说明文档充足,可编写动态网页,可非常方便地连接服务器端的MySQL数据库,对数据库进行操作。服务器上的PHP程序可便捷地获取数据库数据并生成JSON格式的数据返回给前端,适合作为前端向后端获取数据的API。


2 配置开发所需要的软件

2.1 Xcode

优秀的集成开发工具,可使用C、C++、Objective-C及Swift语言进行软件开发,是编写iOS APP的不二选择。Xcode可从App Store免费方便地下载。

2.2 MAMP

是Mac上非常经典、一键集成配置本地服务器的优秀软件。MAMP个人版是免费的,便于程序员现在本地配置网页服务器和MySQL数据库环境。程序员可先在本地进行测试代码无误后再通过SSH和SFTP等服务向远程服务器配置。

2.3 Navicat for MySQL

是一款为MySQL量身打造的前端控制软件,可通过可视化的点按操作以及SQL语句操作本地服务器或远程服务器上的数据库。

2.4 Visual Studio Code

微软良心制作的编辑开发工具,支持多种语言的高亮显示和智能提示,可方便的开发PHP程序。


3 主要开发流程

3.1 配置本地Apache、MySQL、PHP环境

运行MAMP个人版,Start Servers即可一键配置所需环境。

3.2 数据库设计与开发

此阶段需要根据开发项目进行需求分析,然后从需求中抽象出所需实体以及关系构建E-R图,然后根据E-R图设计数据库中实际存储的一系列表格和关系,最后根据数据库三大范式验证设计结果有无错误和冗余,修改无误后使用Navicat for MySQL在本地服务器中的MySQL数据库创建相关表格和关系。

3.3 iOS APP前端开发

此阶段需要在Xcode中创建工程实现基础UI和主要业务逻辑。在Xcode工程中,使用storyboard拖拽UI控件和View⁃Controller,再使用AutoLayout给控件添加约束达到页面控件的合理布局或实现某些动画。之后,根据storyboard中的每个ViewController,创建一系列继承于UIViewController使用Swift语言的Cocoa Touch Class,然后将创建的Class与storyboard中的ViewController的Custom Class的Class相对应。之后点击Xcode中的Show the Assistant editor同时显示storyboard中的ViewController与对应的Cocoa Touch Class,通过按住control键鼠标左键单击拖拽storyboard中的UI控件到Class文件中可创建UI控件变量或触发事件函数。最后,使用Swift语言结合iOS APP的生命周期实现每个页面的业务逻辑。

3.4 编写数据库接口

APP前端需要从后端的数据库获取数据,但因为安全等原因,Swift语言只能直接操作SQLite这种小型本地数据库,无法直接连接服务器上的数据库,操作远程数据。故而需要利用PHP语言编写数据库接口,后端把MySQL数据库中的数据以JSON格式返回给APP。

下面给出一个简易实例。

3.5 配置远程服务器及软件测试

通过Mac上的Terminal(终端),新建远程连接,如安全Shell (ssh)服务即可把PHP程序配置到远程Linux服务器端,用Navi⁃cat for MySQL将本地服务器中的SQL文件导出,再导入到服务器上的MySQL数据库,改写APP和PHP接口中的网络请求地址,测试运行。


4 不足与改进

本文所述是一种基于LAMP的简易iOS APP开发方法,从实现手段不够安全,数据没有安全加密,对于正式项目应该使用用户token和安全加密算法。对于小型项目也可不必租用远程服务器,通过学习LeanCloud、Bomb后端云等云服务公司提供的开发文档可利用云服务器进行替代远程服务器,简化了一系列的后端操作。不过,使用云服务器也会造成对于云服务平台的依赖,一旦平台发生问题,会带来数据泄露和大规模数据迁移等问题。


5 结束语

随着科技的发展开发APP肯定会越来越简单,不过其核心思路万变不离其宗,每种方式都不是绝对的优秀,一种方式的优点有时候却在另一种方式中被视为缺点。米维信息认为开发者应在开发中根据实际情况,具体情况具体分析,权衡利弊得出最好的开发方案。


关键字: 衡阳APP开发,LAMP

衡阳网站建设,APP开发活动入口
相关资讯
热门资讯
提供衡阳微信小程序开发,微信营销功能开发、公众号开发等开发服务