forked from jackfrued/Python-100-Days
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
57 changed files
with
2,071 additions
and
585 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
## 项目实战 - 开启团队项目 | ||
## 开启团队项目 | ||
|
||
### 创建项目 | ||
|
||
|
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
## 英语面试 | ||
|
||
以下用I表示面试官(Interviewer),用C表示面试者(Candidate)。 | ||
|
||
### 开场寒暄 | ||
|
||
1. I: Thanks for waiting. (Please follow me.) | ||
|
||
C: It's no problem. | ||
|
||
2. I: How are you doing this morning? | ||
|
||
C: I'm great. / I'm doing fine. Thank you. / How about you? | ||
|
||
3. I: How did you get here? | ||
|
||
C: I took the subway here. / I drove here. | ||
|
||
4. I: Glad to meet you. | ||
|
||
C: Glad to meet you. / It's great to finally meet you in person. (之前电话沟通过的) | ||
|
||
### 正式面试 | ||
|
||
#### 人力面试 | ||
|
||
1. I: Can you tell me a little bit about yourself? (介绍下自己) | ||
|
||
原则:不要谈私生活和奇怪的癖好(英雄联盟干到钻石),因为别人更想知道的是你的专业技能(qulifications)和工作经验(experience),所以重点在你之前的公司(company name)、职位(title)、时间(years)和主要职责(major responsibilities) | ||
|
||
C: Thank you for having me. My name is Dachui WANG. I'm 25 years old, and I'm single. I have a Bachelor's Degree of Computer Science from Tsinghua University. I was a Junior Java Programmer for ABC Technologies during my college life. Then I become an intermediate Java engineer for XYZ Corporation in last two years. Programming is my everyday life and programming is where my passion is. I think I have a good knowledge of Java enterprise application developement using light-weight frameworks like Spring, Guice, Hibernate and other open source middle-ware like Dubbo, Mycat, rocketmq and so on and so forth. I love reading, travelling and playing basketball in my spare time. That's all! Thank you! | ||
|
||
2. I: How would you describe your personality? (你的性格) | ||
|
||
C: I'm hard working, eager to learn, and very serious about my work. I enjoy working with other people and I love challenges. | ||
|
||
3. I: What do you know about our company? (你对我们公司有什么了解) | ||
|
||
(需要做功课,了解公司的状况和企业文化,该公司在这个行业中的一个状况,有什么核心业务,主要的竞争对手有哪些) | ||
|
||
C: The one thing that I like the most about our company is your core values. I think they're very important in this industry because …(自由发挥的部分)... I personally really believe in the cause as well. Of course, I'm very interested in your products such as …(功课部分)… and the techniques behind them. | ||
|
||
4. I: Why are you leaving your last job? (为什么离职) | ||
|
||
C: I want to advance my career and I think this job offers more challenges and opportunities for me do to that. | ||
|
||
5. I: What do you see yourself in 3 or 5 years? (3-5年职业规划) | ||
|
||
C: My long term goals involve growing with the company, where I can continue to learn, to take on additional responsibilities and to contribute as much value as I can. I intend to take advantage of all of these. | ||
|
||
6. I: What's your salary expectation? (期望薪资) | ||
|
||
C: My salary expectation is in line with my experience and qualifications. I believe our company will pay me and every other employee fairly. (把球踢给对方先看看对方报价是多少,如果对方非要你报价再说后面的内容) I think 15 thousands RMB or above is fitting for me to leave in Chengdu. | ||
|
||
7. I: Do you have any questions for me? (问面试官的问题) | ||
|
||
C: What's the growth potential for this position? | ||
|
||
|
||
#### 技术面试 | ||
|
||
1. I: What's difference between an interface and an abstract class? | ||
2. I: What are pass by reference and pass by value? | ||
3. I: What's the difference between process and threads? | ||
4. I: Explain the available thread state in high-level. | ||
5. I: What's deadlocks? How to avoid them? | ||
6. I: How HashMap works in Java? | ||
7. I: What's the difference between ArrayList and LinkedList? (类似的问题还有很多,比如比较HashSet和TreeSet、HashMap和Hashtable) | ||
8. I: Tell me what you know about garbage collection in Java. | ||
9. I: What're two types of exceptions in Java? | ||
10. I: What's the advantage of PreparedStatement over Statement? | ||
11. I: What's the use of CallableStatement? | ||
12. I: What does connection pool mean? | ||
13. I: Explain the life cycle of a Servlet. | ||
14. I: What's the difference between redirect and forward? | ||
15. I: What's EL? What're implicit objects of EL? | ||
16. I: Tell me what you know about Spring framework and its benefits. | ||
17. I: What're different types of dependency injection. | ||
18. I: Are singleton beans thread safe in Spring framework? | ||
19. I: What're the benefits of Spring framework's transaction management? | ||
20. I: Explain what's AOP. | ||
21. I: What's a proxy and how to implement proxy pattern? | ||
22. I: How Spring MVC works? | ||
23. I: What's the working scenario of Hibernate and MyBatis? | ||
24. I: How to implement SOA? | ||
25. I: Make a brief introduction of the projects you are involved before? | ||
|
||
|
||
上面主要是面试Java程序员的问题,但是整个流程大致如此。 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
## 面试中的公共问题 | ||
|
||
### 计算机基础 | ||
|
||
1. TCP/IP模型相关问题。 | ||
|
||
> 建议阅读阮一峰的[《互联网协议入门(一)》](http://www.ruanyifeng.com/blog/2012/05/internet_protocol_suite_part_i.html)和[《互联网协议入门(二)》](http://www.ruanyifeng.com/blog/2012/06/internet_protocol_suite_part_ii.html)。 | ||
2. HTTP和HTTPS相关问题。 | ||
|
||
> 建议阅读阮一峰的[《HTTP 协议入门》](http://www.ruanyifeng.com/blog/2016/08/http.html)和[《SSL/TLS协议运行机制的概述》](http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html)。 | ||
3. Linux常用命令和服务。 | ||
|
||
4. 进程和线程之间的关系。什么时候用多线程?什么时候用多进程?。 | ||
|
||
5. 关系型数据库相关问题(ACID、事务隔离级别、锁、SQL优化)。 | ||
|
||
6. 非关系型数据库相关问题(CAP/BASE、应用场景)。 | ||
|
||
### Python基础 | ||
|
||
1. 开发中用过哪些标准库和三方库。 | ||
|
||
> 标准库:sys / os / re / math / random / logging / json / pickle / shelve / socket / datetime / hashlib / configparser / urllib / itertools / collections / functools / threading / multiprocess / timeit / atexit / abc / asyncio / base64 / concurrent.futures / copy / csv / operator / enum / heapq / http / profile / pstats / ssl / unitest / uuid | ||
2. 装饰器的作用、原理和实现。 | ||
|
||
3. 使用过哪些魔法方法。 | ||
|
||
> 建议阅读[《Python魔术方法指南》](https://pycoders-weekly-chinese.readthedocs.io/en/latest/issue6/a-guide-to-pythons-magic-methods.html)。 | ||
4. 生成式、生成器、迭代器的编写。 | ||
|
||
5. 列表、集合、字典的底层实现。 | ||
|
||
6. 垃圾回收相关问题。 | ||
|
||
7. 并发编程的相关问题。 | ||
|
||
8. 协程和异步I/O相关知识。 | ||
|
||
### Django和Flask | ||
|
||
1. MVC架构(MTV)解决了什么问题。 | ||
|
||
2. 中间件的执行流程以及如何自定义中间件。 | ||
|
||
3. REST数据接口如何设计(URL、域名、版本、过滤、状态码、安全性)。 | ||
|
||
> 建议阅读阮一峰的[《RESTful API设计指南》](http://www.ruanyifeng.com/blog/2014/05/restful_api.html)。 | ||
4. 使用ORM框架实现CRUD操作的相关问题。 | ||
|
||
- 如何实现多条件组合查询 / 如何执行原生的SQL / 如何避免N+1查询问题 | ||
|
||
5. 如何执行异步任务和定时任务。 | ||
|
||
6. 如何实现页面缓存和查询缓存?缓存如何预热? | ||
|
||
### 爬虫相关 | ||
|
||
1. Scrapy框架的组件和数据处理流程。 | ||
2. 爬取的目的(项目中哪些地方需要用到爬虫的数据)。 | ||
3. 使用的工具(抓包、下载、清理、存储、分析、可视化)。 | ||
4. 数据的来源(能够轻松的列举出10个网站)。 | ||
5. 数据的构成(抓取的某个字段在项目中有什么用)。 | ||
6. 反反爬措施(限速、请求头、Cookie池、代理池、Selenium、PhantomJS、RoboBrowser、TOR、OCR)。 | ||
7. 数据的体量(最后抓取了多少数据,多少W条数据或多少个G的数据)。 | ||
8. 后期数据处理(持久化、数据补全、归一化、格式化、转存、分类)。 | ||
|
||
### 数据分析 | ||
|
||
1. 科学运算函数库(SciPy和NumPy常用运算)。 | ||
2. 数据分析库(Pandas中封装的常用算法)。 | ||
3. 常用的模型及对应的场景(分类、回归、聚类)。 | ||
4. 提取了哪些具体的指标。 | ||
5. 如何评价模型的优劣。 | ||
6. 每种模型实际操作的步骤,对结果如何评价。 | ||
|
||
### 项目相关 | ||
|
||
1. 项目团队构成以及自己在团队中扮演的角色(在项目中的职责)。 | ||
2. 项目的业务架构(哪些模块及子模块)和技术架构(移动端、PC端、后端技术栈)。 | ||
3. 软件控制管理相关工具(版本控制、问题管理、持续集成)。 | ||
4. 核心业务实体及其属性,实体与实体之间的关系。 | ||
5. 用到哪些依赖库,依赖库主要解决哪方面的问题。 | ||
6. 项目如何部署上线以及项目的物理架构(Nginx、Gunicorn/uWSGI、Redis、MongoDB、MySQL、Supervisor等)。 | ||
7. 如何对项目进行测试,有没有做过性能调优。 | ||
8. 项目中遇到的困难有哪些,如何解决的。 |
Oops, something went wrong.