跳到主要内容

学习基础工具

基础了解

本文介绍如何使用 ChatGPT 提高学习基础工具的效率,例如学习 Redis, Django, React, MySQL 等。在面试中,常见的问题包括:

  1. 介绍此工具的使用场景,它的优点和缺点是什么?
  2. 介绍此工具的关键特性以及实现原理
  3. 与其他相似的工具对比,什么情况下选择它?

确定关键主题

某些组件相对比较复杂,内容繁杂。例如数据库,消息队列等,所以一开始我们应该先确定学习的重点主题,使用合适的 ChatGPT prompts 非常重要,这里以 MySQL 为例,当然你可以替换成其他工具

"Tell me 10 most asked topics about MySQL during the software engineer interview."

获得的回答以及对应的主题是

回答主题
1. How to create a database and a table in MySQL?Sechme 设计
2. How to perform database queries using SQL?数据库查询
3. What is an index in MySQL?数据库索引
4. How to join two or more tables in MySQL?跨表查询
5. How to use database transactions in MySQL?事务处理
6. How to handle database security in MySQL?安全性
7. How to optimize MySQL database performance?查询效率
8. What is the difference between MySQL and MariaDB?工具对比
9. How to backup and restore databases in MySQL?备份与恢复
10. How to use views, procedures and functions in MySQL?高阶应用

了解主题之后,我们可以对面试考核的重点有一个抽象的理解,接下来我们可以围绕主题逐个学习。

确定具体问题

针对每个主题进行二次提问,尝试使用以下 ChatGPT prompts 获得具体问题

"Tell me five most asked software engineer interview questions about How to create a database and a table in MySQL?"

  1. What is the syntax to create a database and a table in MySQL?
  2. How do you insert data into a table in MySQL?
  3. How do you modify a table in MySQL?
  4. What are the data types in MySQL?
  5. How do you delete a table from a database in MySQL?

不要马上询问答案,ChatGPT 出色的地方是能够提出好的问题,让我们先带着这些问题来阅读对应的学习资料。

阅读学习资料

官方文档质量和准确度也更高,能给足够回答大部分的面试问题,尝试在官方文档中找到对应的章节进行阅读,或者使用 ChatGPT prompts 来找到具体的 URL:

"Tell me five URLs to learn "How to create a database and a table in MySQL" in MySQL official document."

  1. Create database
  2. Create Table
  3. Tutorial
  4. Getting started
  5. Upgrading downgrading

你也可以尝试通过视频进行学习,可以尝试 ChatGPT prompts:

"Tell me five Youtube videos URL to learn How to create a database and a table in MySQL."

  1. MySQL create database (Tutorialspoint)
  2. MySQL create database (Guru99)
  3. MySQL Tutorial for Beginners
  4. How to create a table in MySQL
  5. Creating Database
备注

你应该针对具体问题来进行阅读与学习,如果该问题涉及其他你不熟悉的概念以及工具的话,你可以使用 3 分钟快速了解对应的概念,但是不要切换你的学习主题

获得反馈

阅读完后,尝试使用文档写下具体问题的回答,并且与 ChatGPT 的回答进行对比:

"How to create a database and a table in MySQL?"

  1. Connect to your MySQL server. This can be done through the command line, or through a mouse click for graphical interface tool like phpMyAdmin.
  2. Execute the CREATE DATABASE statement. This command is used to create a new database. Specify the name of the database and define some parameters for it.
  3. Create a new table. Use the CREATE TABLE command to create your new table. Specify something like an ID and a name for the column names, along with the type of data the column will contain.
  4. Insert data into the table. You can do this either manually at the command line, or via an INSERT INTO query. Include the specific values you want inserted into the table.
  5. Verify the data is in the table. Make sure the table contains the data you need by using the SELECT command to query the table and check the values. By following these steps, you can create a new database and define a table within that database.

我们可以学习 ChatGPT 的回答技巧:

  1. 分点阐述,这个问题 ChatGPT 分成了 5 个点进行回答,针对面试中的大部分问题,不需要急着马上回答,而是先思考是否可以进行分点,这样一方面逻辑更为清晰,另外面试官的理解压力也更低。
  2. 先总后分,先把每个点的重点放在前面,然后再阐述细节,这样同样可以使回答更有条理。

三阶段学习方法

不同公司对于不同工具的熟悉度要求都不同,我们将熟悉度从浅到深分为三个阶段,大部分工具只需要学习前两个阶段,举个例子,学习 TCP 协议时的具体题目:“ TCP 为什么需要三次握手?”

What:了解题目的名词概念

  • 什么是 TCP 协议?它位于网络协议的哪一层
  • 什么是服务器和客户端的握手?

Why:了解题目中的技术原理和使用场景

  • 了解为什么需要三次握手,三次握手的作用是什么?什么时候需要使用三次握手?
  • 答:三次握手是保证 TCP 全双工传输的最少握手次数。
  • *注意:这个阶段不需要了解三次握手的细节。

How:了解题目中的技术细节 技术细节关心的是源码以及具体的实现细节,TCP 三次握手属于面试的高频题,学习到什么程度才足够呢?

  • TCP 三次握手的具体流程以及各阶段的主要目的
  • SYN,ACK,Seq 等数据的作用
  • CLOSE-WAIT 和 TIME-WAIT 等状态的含义

从点到面

基础复习更像是一个量变引发质变的过程。一个比较好总结的方式是使用脑图。先按照不同的模块来学习,学习后考核自己是否能够回答对应的问题。

network