[Code] 变态之人键合一

目的也比较单纯,选一门语言,走向人键合一。
选了两本书作为操练场:《精通Python设计模式》、《Data Structure and Algorithm in Python》。
当然,也专门选购了Thinkpad T系列犒劳双手,迎接重生,再筑辉煌。
开始
一、软件架构师
基本概念
[Arch] 01. Before Design Patterns - UML【开发文档中的UML】
[Arch] 02. Design principle and Software Pattern【七大设计原则、四大模式】
[Arch] 03. Practice UML in project【实践流程】
架构实践
[Arch] 04. Software Architectural Patterns【软件架构】
二、软件设计师
结合《精通Python设计模式》再学习,主要是以常用的为主。
[Design Patterns] 01. Creational Patterns - Abstract Factory
[Design Patterns] 02. Structural Patterns - Facade Pattern
[Design Patterns] 03. Behavioral Patterns - Observer Pattern
三、软件工程师
此处只是列出问题、提示,主要是以动手为主。
工程文件 FILE IO
文件、文件夹判断
路径集合:listdir, walk
检查路径:os.path.exists --> os.path.isfile/os.path.isdir --> os.access
拼凑拆分:os.path.join --> os.path.split(), os.path.splittxt()
文件读写
安全读取:with...as...原理解析
缓存读取:readlines(...)
逐行处理:strip, rstrip
模块文件
模块加载:同级目录、子目录、表亲目录。
模块设置:自定义__init__文件以管理 package。
循环 Iteration
只是为了循环
循环几次,并得到index
循环到头,while...else,for in...else
处理列表
简单处理:列表内lambda内搞定
复杂处理:map,但返回的是obj
筛选处理:filter,但返回的是obj;也可使用列表内if的策略
内部处理:reduce,直接返回结果,非obj。
排序处理:sorted,通过key引入lambda
实战练习
Fibonacci sequence:[Advanced Python] 14 - Generator for calculating prime
Prime number:[Advanced Python] 14 - Generator for calculating prime
栈 Stack
实现Stack类
通过list实现;
__init__中存放核心变量;
实战练习
多类括号匹配问题。
表达式计算之”中缀变后缀“:[LeetCode] 由 “中缀表达式 --> 后缀表达式" 所想
队列 Queue
实现Queue类
通过list实现
循环队列的两种遍历策略
实现Dequeue类
回文检测
回文问题扩展:[IR] Suffix Trees and Suffix Arrays
实战练习
打印机任务队列的oop模拟:[LeetCode] 由 “打印机任务队列" 所想
多线程
程间通信:[Python] 09 - Multi-processing
链表 List
实现无序链表
Node类实现:实例方法的只读、可写(装饰器模式):[Python] 08 - Classes --> Objects
"装饰器模式" 引出的 “类内命名风格问题”:[Advanced Python] 16 - Google style guide for programming
实现有序链表
通过 “继承” 实现
递归 Recursion
非栈帧
栈帧
# TODO (Jeff): ... 二叉树遍历
动态规划 Dynamic programming
效率比对
实战练习
# TODO (Jeff): ... 需要更多的练习
排序和搜索 Sort and Find
实战练习
[Code] 烧脑之算法模型【详见算法部分】
在复习树和图之前,有必要中场休息,牢固已学内容。
总结内容如下:
# TODO (Jeff): ...
ing...
[Code] 变态之人键合一的更多相关文章
- Entity Framework Code First主外键关系映射约定
本篇随笔目录: 1.外键列名默认约定 2.一对多关系 3.一对一关系 4.多对多关系 5.一对多自反关系 6.多对多自反关系 在关系数据库中,不同表之间往往不是全部都单独存在,而是相互存在关联的.两个 ...
- Code First 重复外键(简单方法)
之前有说过 Code First 重复外键 的一种解决方案. http://blog.csdn.net/hanjun0612/article/details/50478134 虽然可以解决问 ...
- Entity Framework Code First 遭遇主键自动生成问题
4.0后就没有去跟踪后面的版本了.现在直接开始用5.0没想到在做User的GURD时就遭遇insert不进数据问题. ISet<User>.Add(user);_context.SaveC ...
- Entity Framework 4.1 - Code First 指定外键名称
Entity Framework 4.1 中,生成外键的方式有以下几种: 1-指定导航属性,会自动生成外键,命名规则为:“表名_主键名”2-默认情况下与导航属性的主键名称相同的字段会自动被标记为外键, ...
- Code First 指定外键名称
指定类外键有注释(DataAnnotation)和FluentAPI两种方式, 目前掌握的知识我们先把DataAnnotation可用的四种方式总结如下 第一种方法: //1-指定导航属性,会自动生成 ...
- code first 添加外键时,与原有的数据冲突ALTER TABLE 语句与 FOREIGN KEY 约束"FK_XXXXX"冲突
问题的原因是新增的外键字段没有默认值,造成的,有很多方法可以解决,我这里通过修改生成的迁移文件,设定为可空,或者设置默认值即可.具体看情况使用.
- EntityFramework Code First 构建外键关系,数据库不生成外键约束
创建 ExtendedSqlGenerator类 public class ExtendedSqlGenerator : SqlServerMigrationSqlGenerator { #regio ...
- Code First 重复外键
原因:在一个表中,我有如下字段 表名:orderInfo 列名:companySend,companyReceiver 先展示表结构,(手打了,见谅) public class OrderInfo { ...
- [Optimized Python] 17 - Performance bottle-neck
前言 对于一门编程语言,没接触到“优化”和“库代码”的源码理解程度,不足以谈“掌握”二字. 本篇的学习笔记,同时也意味着自己终于触及到了Python的junior国际水准.(joke) 要学的东西有很 ...
随机推荐
- Java网络编程与NIO详解8:浅析mmap和Direct Buffer
微信公众号[黄小斜]作者是蚂蚁金服 JAVA 工程师,目前在蚂蚁财富负责后端开发工作,专注于 JAVA 后端技术栈,同时也懂点投资理财,坚持学习和写作,用大厂程序员的视角解读技术与互联网,我的世界里不 ...
- 调度系统Airflow1.10.4调研与介绍和docker安装
Airflow1.10.4介绍与安装 现在是9102年,8月中旬.airflow当前版本是1.10.4. 随着公司调度任务增大,原有的,基于crontab和mysql的任务调度方案已经不太合适了,需要 ...
- ionic App 解决android端在真机上 tab处于顶部的Bug
在app.js 页面中添加以下代码 .config(function($stateProvider, $urlRouterProvider,$ionicConfigProvider) { $ionic ...
- switch语句(上)(转载)
switch语句是C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码.switch语句可以具备多个分支,也就是说,根据参数的N种取值,可以跳转到N个代码段去运行.这不同于if语句,一条单独 ...
- npm init,npm -y, npm install --save,npm install --save-dev
npm init 初始化一个简单的package.json文件,执行该命令后终端会依次询问 name, version, description 等字段 npm init --yes|-y 作用同上, ...
- wait()、notify()方法原理,以及使用注意事项
wait.notify原理 在前面以经说到对象锁的本质,实际上是对象头的一个监视器锁的数据结构.这个结构如下: (图片来源于网络) 几个线程一起竞争对象的锁(enter),只有一个能成功(acquir ...
- Java版SockeDemo案例,有很详细的注释
一般是用一个线程池来处理接受到的请求 直接上代码(一) ServerThread层 import java.io.BufferedReader; import java.io.InputStreamR ...
- 定时器Timer的运用
1.Timer调度任务的方法
- hdu 3974 Assign the task(线段树)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=3974 题意:给定一棵树,50000个节点,50000个操作,C x表示查询x节点的值,T x y表示更 ...
- Ubuntu 18.04 安装 onedrive
问题 在Ubuntu 18.04上安装Onedrive 问题背景 对于文档的同步,还是喜欢用Onedrive,主要因为Onedrive对文档的在线编辑支持很好. Onedrive初始免费容量5G,加上 ...