如何快速、全面、深入地掌握一门编程语言

news/2024/4/19 9:19:58/文章来源:https://blog.csdn.net/wangsenling/article/details/129129002

思考路线

如何快速?

什么样的Demo才能让人觉得你掌握了它?

  1. 空 判断:构造一个可以判断所有空的 is_empty 函数

  2. for 循环:i++ 和 集合迭代两种

  3. 时间获取:年/月/日 时分秒 时间戳与时间格式互转 休眠时间函数

  4. 字符串处理:长度、拼接、输出、与数组互转,字符查询、片段提取/替换、匹配,正则匹配

  5. 数组:数组的CRUD,其中R 有过滤、去重、头尾取值,中间取值,更新有头尾压入,删除有头尾删除

  6. map 或 结构体:CUD

  7. map + 数组:CRUD

  8. 函数:前后拦截——修饰器(可有可无)

  9. 对象:理解为函数+ map+关联关系,其中关联关系有getter,setter,call

  10. 生成器:选修

  11. 进程、线程、协程:选修

  12. 事件循环

如何快速掌握以上基础技能?

  1. 用你已经掌握的语言做各种笔试题,然后用 ChatGPT 翻译成你新学的语言进行比照,重复这个过程,则会以最快的速度掌握新语言,相当于在原有模型的基础上,添加新模型,而不是单开新模型;

什么框架称得上简单快捷?

  1. 有 Demo 、有文档、可调试,从开始到结束的仅需2个小时即可运行起来

    1. 可调试是非常关键的,调试是最好的老师,调用栈可以让你思路清晰

怎样找到简单快捷的框架?

  1. 去 github 搜索代码库或者去 bilibili 上搜索,大众技术去慕课,小众技术去 bilibili,只要你想要学的,都有人想要拿来引流;

从通用形式的 Web框架开始入手?

  1. 认证和权限肯定可以定制,没有任何框架设计者会写死,写死的框架肯定没人用

  2. 登陆的用户Model肯定可以定制

  3. Request 和 Reponse 肯定可以被拦截修改

  4. 异常处理肯定可以被定制

  5. 日志处理肯定可以被定制

如何全面?

大家公认的比较全面的教程有那些?

问度娘和谷歌吧,不过这些都没有系统化

教育机构推出来的教程是什么样的?

可以参考慕课,mooc,网易,黑马,极客他们在搞啥,以及去淘宝,拼多多找找销量靠前的

怎么保证课程知识之间不重复性?

要从目录入手,确定几个课程,部署下他们的代码,正常使用之后,考虑他们结构是否是企业级,综合几套代码中的特色,汇集成一套全面的代码

如何深入?

使用场景的思考

看技术社区的杠精们在杠啥,他们杠的越厉害,给出的场景就越多,越偏激的人越喜欢杠,也越集中在自己的领域里,不看其他场景,多个杠精,就代表着多个场景

怎么斤斤计较那一时三刻?

看算法社区的杠精们争议啥,他们争议的就是那几纳秒的事情

设计的存在意义?

去找这门语言的版本历史,看它早期是怎么干的,现在怎么干的?以及参考其他语言的进化过程,就能猜到当前语言为什么会这么做,掌握其出现原因比掌握这门知识更重要,因为你知道它如何出现之后,才能推演出来它与其他特性的结合点,例如为何要负负得正

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_71702.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Word控件Spire.Doc 【Table】教程(17):如何在 C#、VB.NET 中删除 Word 表格中的行和列

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转…

PCB设计中降低噪声与电磁干扰的24个窍门

电子设备的灵敏度越来越高,这要求设备的抗干扰能力也越来越强,因此PCB设计也变得更加困难,如何提高PCB的抗干扰能力成为众多工程师们关注的重点问题之一。本文将介绍PCB设计中降低噪声与电磁干扰的一些小窍门。 下面是经过多年设计总结出来的…

大数据处理学习笔记1.3 使用Scala集成开发环境

文章目录零、本讲学习目标一、搭建Scala的IntelliJ IDEA开发环境(一)启动IDEA(二)安装Scala插件(三)配置IDEA使用的默认JDK(四)创建Scala项目1、创建Scala项目 - ScalaDemo2、创建Sc…

linux高级命令之死锁

死锁学习目标能够知道产生死锁的原因1. 死锁的概念死锁: 一直等待对方释放锁的情景就是死锁为了更好的理解死锁,来看一个现实生活的效果图:说明:现实社会中,男女双方一直等待对方先道歉的这种行为就好比是死锁。死锁的结果会造成应用程序的停止响应&…

【vue】elemente-ui table toggleRowSelection 默认选择无效[已解决]

项目场景: 点击按钮,弹出一个弹出框,内部出现一个table表,表内数据是动态获取,同时得勾选上几个table表的数据,类似以下的图 问题描述 点击按钮显示弹出框,加载table中的数据,默…

【机器学习】Adaboost

1.什么是Adaboost AdaBoost(adapt boost),自适应推进算法,属于Boosting方法的学习机制。是一种通过改变训练样本权重来学习多个弱分类器并进行线性结合的过程。它的自适应在于:被前一个基本分类器误分类的样本的权值会…

springboot整合Chat Generative Pre-trained Transformer

什么是Chat Generative Pre-trained Transformer Chat Generative Pre-trained Transformer,是以人工智能驱动的聊天机器人程序 ,已经更新多个版本,很多大厂也都在接入其API。 整合难度 难度一颗星,基本上就是给官方API发请求&am…

在VMware Workstation中配置固定IP、在VMware Fusion中配置固定IP

1、在VMware Workstation中配置固定IP 配置固定IP需要2个大步骤: 1.在VMware Workstation(或Fusion)中配置IP地址网关和网段(IP地址的范围) 首先让我们,先进行第一步,跟随图片进行操作 现在进…

基于某业务单登陆场景并发测试实战

文章目录1 测试目的2 测试目标和测试对象3 名词解释4 测试说明5 测试环境和工具5.1 测试工具5.2 测试环境5.3 人力计划6 测试用例6.1 方案设计6.2 接口地址6.3 接口参数6.3.1 header参数6.3.2 请求参数7 脚本设计8 监控数据8.1 虚拟用户并发情况8.2 事务响应时间8.3 每秒点击次…

面试攻略,Java 基础面试 100 问(十二)

如何将字符串转换为基本数据类型? 调用基本数据类型对应的包装类中的方法 parseXXX(String)或 valueOf(String)即可返回相应基本类型; 如何将基本数据类型转换为字符串? 一种方法是将基本数据类型与空字符串(””)连…

微服务03 分布式搜索引擎 elasticsearch ELK kibana RestAPI RestClient

分布式搜索引擎01-- elasticsearch基础0.学习目标1.初识elasticsearch1.1.了解ES1.1.1.elasticsearch的作用elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容例如:在GitHub搜索代码…

半年前学习了性能测试涨薪5k, 经验+技术积累+坚持很重要

做测试一年多来,虽然平时的工作都能很好的完成,但最近突然发现自己在关于测试的整体知识体系上面的了解很是欠缺,所以,在工作之余也做了一些测试方面的知识的补充。不足之处,还请大家多多交流,互相学习。现…

系列三、docker相关指令

一、docker指令 1.1、查看docker详细信息 docker info 1.2、查看docker版本 docker version 1.3、帮助命令 docker --help 二、images指令 2.1、查看本地仓库中有哪些镜像 docker images 2.2、下载新的镜像 # 语法 docker pull 镜像名:版本号# 案例 docker pull mysql…

Node.js安装配置及Angular CLI的安装

NodeJS的安装node.js官网下载地址: https://nodejs.org/en/download/在node.js的官网上面下载适合自己机型的,如果是Windows系统的话,建议下载对应的 Windows Installer (.msi) 。下载完成后,双击打开安装,安装路径最好自定义&…

12款适合小团队协作、任务管理和进度跟踪的在线任务管理的工具推荐?

国内外12款主流任务管理软件测评: 1.开发任务管理PingCode; 2.多合一项目任务管理Worktile;3.个人和小团队项目任务管理Notion; 4.企业任务管理平台SmartTask; 5.小团队任务管理Teambition;6.IT任务追踪管理Jira等。无论是做好工作任务管理还是个人任务管理,从来都不…

Flink-多流转换(Union、Connect、Join)

文章目录多流转换分流基本合流操作联合(Union)连接(Connect)基于时间的合流——双流联结(Join)窗口联结(Window Join)间隔联结(Interval Join)窗口同组联结&a…

Git复习

1. 引言 现在要用到Git,复习一下关于Git的指令,知识摘自《Pro Git》 2. 起步 git和其他版本控制软件最大的差别在于git是直接记录某个版本的快照,而不是逐渐地比较差异。 安装: sudo apt install git-all设置用户信息: git c…

Vue3搭建记录

一、初始化项目:项目名称vue3-element-admin npm init vitelatest vue3-element-admin --template vue-ts 二、整合Element-Plus 1.本地安装Element Plus和图标组件 npm install element-plus npm install element-plus/icons-vue 2.全局注册组件 // main.ts imp…

【LeetCode】No.232. 用栈实现队列 -- Java Version

题目链接:https://leetcode.cn/problems/implement-queue-using-stacks/ 1. 题目介绍(232. 用栈实现队列) 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty)&#xff…

【前端】小程序开发入门:安装开发工具、目录结构与项目配置

文章目录前期准备目录结构app.jsonpageswindow其他前期准备 开发小程序要先申请一个对应的AppID:微信小程序 (qq.com) 微信官方小程序开发文档:微信开放文档 (qq.com) 然后安装一个小程序开发工具: 选择稳定版: 安装后打开&…