技术转型初记录

十几年前是一名正宗的开发cs软件的程序员,PM。职业生涯中断了几年。当然,技术也没坚持学习,落后了又不知多少年了。

本来在准备整理上一个项目的代码,深入研究下java的框架springboot的。还买了个视频,刚看两集。又有微信公众号二次开发的项目等着熟悉了。框架是thinkPHP。没关系吧反正都是学习,换语言就换咯。

学习的过程习惯用xmind来整理一下结构,如上图。具体项目的代码、thinkPHP的框架、企业微信公众号开发等,就另外开脑图,都链接到这个主页上。

  1. 相关软件安装

开发工具PhpStorm 2020.1 x64。熟悉Jetbrains其他产品的

选来选去,新手还是适合集成平台。下载了phpstudy8.1版本,安装好了Apache,MySQL,PHP等。中间遇到的问题有:

  • PHP版本。最早在PHP官网下载了PHP7.4。安装phpstudy之后,PHP最新的版本是7.3.10.这样跟安装好的composer版本又出现冲突。所以,还是选集成平台吧。起码各模块的版本之间是不会出现冲突的。最终还是选择PHP7.3.10配composer1.8.5。composer -v成功。PHP的环境目录设置到7.3.10.(关于win下PHP不同版本切换的问题,只需要改变环境目录,重启即可)
  • composer镜像:切到阿里云服务器,composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/。走VPN也可以
  • 其他相关库的安装:Guzzle。 遇到的是ssl问题。禁用composer config -g --disable-tls true

2.thinkPHP框架

1)文档部分:

thinkPHP5完全开发手册过一遍。但是大部分就印象不深刻。还未完全理解。重点看了目录结构,生命周期。主要目标还是对框架有个总体印象。细节部分待看代码的时候逐渐深入。

在官网买了个thinkPHP5路由图解,看完对路由定义、模式、地址等有初步了解。

thinkPHP快速入门迅速过一遍。

2)代码下载。从Git上取了应用项目与核心框架。版本跟现有代码一致,5.0.5.拷贝到phpstudy的WWW目录下,php -S localhost:9999 router.php。一开始至拷贝了应用项目,没有核心框架。提示找不到文件。仔细看错误。再拷贝核心框架过来,根据错误提示,把原目录framework-5.0.5改为thinkPHP。(此时,还不会改相关配置)

经典笑脸

还启动不了,就要netstat -aon|findstr 查下端口有无被占用了。

3.微信公众号二次开发

官网文档:https://work.weixin.qq.com/api/doc/90000/90003/90556

项目使用的方式是在企业微信号增加应用。

一开始学习的内容比较多,有点没理清头绪。先陷入细节中了,官网文档跟这个文档什么区别都没搞清楚https://qydev.weixin.qq.com/wiki/index.php?title=%E9%A6%96%E9%A1%B5。对照着代码同时看文档。协议基本弄清了。有点只见树木不见森林的感觉,还是老实从简易教程看起吧。前面的时间也不算浪费。年纪大了记性不好。多看几遍加深理解也可以。

1)注册企业微信,创建应用

刚好用公司的,我还是管理员。创建了个测试应用,拿到agentID 跟secretid。

2)web version的postman用来调试api

必须安装postman desktop agent才能使用postman web。刚开始没看文档,发送request的时候提示CORS Error: The request has been blocked because of the CORS policy Use Post。

从企业微信里抄到Corpid跟secret,send request后收到微信后台应答

{

    "errcode": 0,

    "errmsg": "ok",

    "access_token": "GuC1L2RdlT1MD3qUN48RLYuv_1XJbLffQq8Erd1yi0aa6kMFYJRyQJyLrvQYyK94-ZgP1mI0gSwFIw-JlNeR9RfJvG9140SQ7mrGky2DHF6iYzmfS_Uzs87qJrgUgg2Z73Yd2YQDHscqt6hVp3BysgznhiNetAGMT7ugEmJ9AYNOgh4Q4hCM6w1E9Wh8CZ9NUqWxMwxUAHPRcjHnvhvJ-Q",

    "expires_in": 7200

}

企业微信里只有我一人,放心大胆调试。https://qyapi.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN&userid=USERID

3)加解密库(官网)

  • WXBizMsgCrypt.php文件提供了WXBizMsgCrypt类的实现,是用户接入企业微信的接口类。Sample.php提供了示例以供开发者参考。errorCode.php, pkcs7Encoder.php, sha1.php, xmlparse.php文件是实现这个类的辅助类,开发者无须关心其具体实现。
  • WXBizMsgCrypt类封装了VerifyURL, DecryptMsg, EncryptMsg三个接口,分别用于开发者验证接收消息的url、接收消息的解密以及开发者回复消息的加密过程。使用方法可以参考Sample.php文件。

4、参考项目代码

1)划分了几个模块分别深入分析相关类、接口。期间很老的EA版本升了个级(主要是旧版本导入PHP文件,很多接口不认了)。关键的业务流程login/initialize/alarm等画sequence图,

通过流程的分析,对前后端数据交互方式(ajax,thinkPHP template等)有了进一步的认识。之前只参与了一个java项目,说实话,对bs结构的软件细节真不太熟悉。需要在做项目的过程中,通过调试,查文档来加深认识。

2)数据库方面

业务类文档,主要记录的泵站点位与数据库相关字段、表格对应关系。

每个点位的报警配置文件

43个泵站,建了160多张表。文档跟名称又不是完全对应的上。实时数据,看哪个表都有。有的又不知道是不是采集断了无更新。看着有点头疼。

5  echarts图表

项目的业务逻辑都很简单。不像我在上一家公司做视频监控平台流媒体服务器时候了。更侧重算法,以及深入行业内技术文档(流媒体协议、音视频编解码等)。

官网https://echarts.apache.org/

https://www.makeapie.com/explore.html这个网站很多实例,在线运行。

6 软件部署

到了快交付的前夕,听说客户还没微信公众号。暂时还是用本公司的号,建了一个应用程序来使用。

1)域名问题

最好购买一个域名,免费的域名,名称都乱七八糟不好记忆。企业用真的有点掉价。在oray或者阿里巴巴都可以。便宜的很,一年也就百来元。

内网映射。我用的花生壳,之前买了专业版,可以免费映射2个。即把开发服务器的端口映射到域名相应端口,在微信上配置url地址

2)其他

主要也是apache安装配置了。比较简单。

以上内容有点杂乱。前端的还没写。为此,我还看了下bootstrap的文档呢。html跟css那一堆一堆,我之前看了也记不住。做了项目后,好多了。:)。前项目用到frozenUI,实际上,这个项目3年也没人更新。要我,是不会选的。bootstrap这么火,css不香吗?

先入个门。

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值