摘要:if LINUX: from . import _pslinux as _psplatform elif WINDOWS: from . import _pswindows as _psplatform else: # pragma: no cover raise NotImplementedErr 阅读全文
posted @ 2020-05-27 18:43 码农恋码 阅读(7) 评论(0) 推荐(0) 编辑
摘要:Windows服务项目的创建,编码,配置,打包生成,安装及启动,编译环境为vs2017,.net4.0。 》文件-新建-项目-visual C#-windows桌面-Windows服务 》编码 输入业务逻辑代码 注意OnStart()内不应阻塞 》配置 然后 serviceinstaller1右键属 阅读全文
posted @ 2019-12-31 14:09 码农恋码 阅读(32) 评论(0) 推荐(0) 编辑
摘要:小系统,面临微信公众号,钉钉对接;还有web端,手机浏览器端等。 数据单点一致的,业务逻辑相似。 时间紧张的时候,进行了一套代码复制。后期只要有一点改的,就全得改,改几次。 最好能把和业务有关的逻辑全部抽取出来统一到业务层,各个端的控制器只鉴权,接收数据,验证数据,调业务层,返回,跳转。 由于小系统 阅读全文
posted @ 2019-11-12 14:44 码农恋码 阅读(19) 评论(0) 推荐(0) 编辑
摘要:分层项目中,有上层调用下层,每一层都可能出错,比如数据库连接,文件读写等异常。除了运行时程序的异常,还有业务逻辑的一些问题。发生异常需要做一定处理,既要让开发人员便于排查问题,又要让用户看到友好又便于理解的信息。 对于底层连接数据库,操作数据库的数据层,异常捕捉后,可以记录日志,日志可以是当前文件, 阅读全文
posted @ 2018-12-25 16:48 码农恋码 阅读(62) 评论(0) 推荐(0) 编辑
摘要:反射定义: 程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。一个类有多个组成部分,例如:成员变量、方法、构造方法等,反射就是加载类,并解剖出类的各个组成部分。 功能作用: 反射机制主要提供以下功能: ①在运行时判断任意一个 阅读全文
posted @ 2018-12-17 10:22 码农恋码 阅读(45) 评论(0) 推荐(0) 编辑
摘要:最常见的就是mvc分层结构。单就后端业务来说,小型应用可以参考javaweb模式,把应用层分为控制层(controller)、业务层(service)、数据层(dao)。在controller层的BaseController鉴权,做统一权限控制,公用信息显示等。子Controller负责具体业务,接 阅读全文
posted @ 2018-12-06 12:46 码农恋码 阅读(72) 评论(0) 推荐(0) 编辑
摘要:一般情况下,点击<a>链接或浏览器输入url时,请求到后端,服务器判断会话是否过期。过期,重定向到登录页,或返回登录页的页面。在ajax中,返回重定向无效,这个时候就需要自己在ajax的逻辑里判断。当状态码为302的时候,前端自己刷新页面,达到去登录页的目的。或者,弹出一个快速登录框登录。 后端在统 阅读全文
posted @ 2018-12-05 12:14 码农恋码 阅读(102) 评论(0) 推荐(0) 编辑
摘要:netty号称java高性能网络库,为人帮忙中,研究了下,写了一个demo。反复调试,更改,局域网两个客户端同时for循环发10000个20字节的数据包,入库mysql,居然没丢。 思路,netty的本身的高性能eventloop机制,接收到数据包后,做简单处理,然后通过dbcp连接池入库。假如,入 阅读全文
posted @ 2018-11-22 15:03 码农恋码 阅读(572) 评论(0) 推荐(0) 编辑
摘要:Python语言规范 Python语言规范 Lint Tip 对你的代码运行pylint 定义: pylint是一个在Python源代码中查找bug的工具. 对于C和C++这样的不那么动态的(译者注: 原文是less dynamic)语言, 这些bug通常由编译器来捕获. 由于Python的动态特性 阅读全文
posted @ 2018-11-13 18:57 码农恋码 阅读(69) 评论(0) 推荐(0) 编辑
摘要:Python风格规范 Python风格规范 分号 Tip 不要在行尾加分号, 也不要用分号将两条命令放在同一行. 行长度 Tip 每行不超过80个字符 例外: 长的导入模块语句 注释里的URL 不要使用反斜杠连接行. Python会将 圆括号, 中括号和花括号中的行隐式的连接起来 , 你可以利用这个 阅读全文
posted @ 2018-11-13 18:56 码农恋码 阅读(196) 评论(0) 推荐(0) 编辑
摘要:如果你定义的函数有可能失败,它就应该返回一个错误。当我调用其他package的函数时,如果这个函数实现的很好,我不需要担心它会panic,除非有真正的异常情况发生,即使那样也不应该是我去处理它。而panic和recover是针对自己开发package里面实现的逻辑,针对一些特殊情况来设计。 阅读全文
posted @ 2018-11-13 18:33 码农恋码 阅读(59) 评论(0) 推荐(0) 编辑
摘要:type Student struct{ name string age int } var stu Student stu.name,stu.age = "张三”,10 stu2 := Student{"李四",20} stu3 := new(Student) //stu3是一个指针 阅读全文
posted @ 2018-11-12 17:43 码农恋码 阅读(255) 评论(0) 推荐(0) 编辑
摘要:注:select主要进行channel状态的判断,本质是channel能否有数据读出,通过该判断进行一些有趣的应用。 阅读全文
posted @ 2018-11-12 15:08 码农恋码 阅读(528) 评论(0) 推荐(0) 编辑
摘要:1、定义结构体 type Student struct { name string code int } 2、类型别名 type i int64 var age i = 30 3、定义接口 type inter interface{ eat() walk() } 4、定义函数类型 type fun_ 阅读全文
posted @ 2018-11-12 14:49 码农恋码 阅读(179) 评论(0) 推荐(0) 编辑
摘要:常用语言:js/php/python/go/java 默认:一般遵守语言本身的编码规范,外加所选框架的规范,即可在团队内保持代码的一致。 命名:需要规范的名称包括,包名、类名、方法/函数名、变量名、常量名等。各种语言稍有差异,但是差异不大。无非是名词,动词名词的组合,以及首字母大小写等。以清晰,有层 阅读全文
posted @ 2018-11-12 13:29 码农恋码 阅读(44) 评论(0) 推荐(0) 编辑