[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) 要学的东西有很 ...
随机推荐
- Web Worker 使用教程
一.概述 JavaScript 语言采用的是单线程模型,也就是说,所有任务只能在一个线程上完成,一次只能做一件事.前面的任务没做完,后面的任务只能等着.随着电脑计算能力的增强,尤其是多核 CPU 的出 ...
- maven学习(3)pom.xml文件说明以及常用指令
pom.xml文件的结构: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/ ...
- Linux下Kafka下载与安装教程
原文链接:http://www.studyshare.cn/software/details/1176/0 一.预备环境 Kafka是java生态圈中的一员,运行在java虚拟机上,按Kafka官方说 ...
- LoRaWAN_stack移植笔记(七)_数据包的接收发送
以下的代码适用于LoRa sx1276点对点的通讯,纯粹的考虑在非发射模式下即为接收模式 配置sx1276的射频参数,并且切换到接收模式 //bandwidth [0:125 1:250 2:500] ...
- java 正则 替换中文为空
//中文替换为"" public String replaceChineseToNULL(String s){ String reg = "[\u4e00-\u9fa5] ...
- switch语句(上)(转载)
switch语句是C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码.switch语句可以具备多个分支,也就是说,根据参数的N种取值,可以跳转到N个代码段去运行.这不同于if语句,一条单独 ...
- 信道估计系列之LS
在无线通信系统中,系统的性能主要受到无线信道的制约.基站和接收机之间的传播路径复杂多变,从简单的视距传输到受障碍物反射.折射.散射影响的传播.在无线传输环境中,接收信号会存在多径时延,时间选择性衰落和 ...
- Setup Factory 9 简单打包
由于项目资源太大,使用VS自带打包工具无法实现需求,所以Setup Factory 9进行打包生成多个文件的方案,下面记录使用方法: 一:这里点击下载:下载,提取码:tt7a 二:下载完安装需要注册码 ...
- 【IDEA】在IDEA中使用@Slf4j报错,找不到log
题:在IDEA中使用@Slf4j报错,找不到log 解决方法:需要在IDEA中安装插件lombok 详细步骤: 1.File->Settings 2.Plugins->Browse rep ...
- HDU-2018多校7th-1011-Swordsman 附杜教fread代码
HDU-6396 题意: 背景是打怪升级的故事,有k个不同属性的初始的能力值,每只怪物也有相同个数的能力值,你只能放倒k个能力值都比怪物大的,每放倒一个怪物,都可以得到相应的k个能力值. 思路: 根据 ...