论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
程序人生
›
编程学习思考
编程学习思考
张春
金牌会员
|
2023-11-13 17:21:40
|
显示全部楼层
|
阅读模式
楼主
主题
844
|
帖子
844
|
积分
2532
编程学习的思考
2023-10-21 14:50:29 星期六(初稿)
大家好!自从大一开始进入计算机科学与技术专业学习,便就开始踏入编程的学习之旅。又是一个秋季,整整三年了!
三年以来,自然是有不少成长,现在回想,这一路中也遇到很多的挫折,也受到过许多”愚蠢“的思想的影响···,跌跌撞撞地前行,当然在这里总结一下编程学习的小经验和方法,希望对大家,刚入门的小白(大佬不需要看这些浪费时间!)有所帮助。
1. 泡圈子--无师自通
谈到技术,很多时候我们都会提到一个词--“生态”。就像你只会一个java语言就去应聘java开发岗位,那肯定是不行的。你还要会spring全家桶等,也就是说每一门技术都是有自己的开发生态的,仅仅学一门开发生态的语言是远远不够的。
在编程学习过程中,要把自己沉浸在一种满是技术学习的环境中。
刚刚写了几个类,实现一个小模块就忍不住去刷半小时的短视频,才练习出一个知识点,又经不住诱惑去陪室友开了两局游戏,这样子就减少了对所开发的功能的进一步思考和打磨,对知识点学习的深入程度会大打折扣。
这就需要在学习过程中要进入状态,把枯燥无味地练习或者技术开发当作一种乐趣,而不是说一种“遭罪”,需要时不时的靠打游戏刷视频来奖励安慰自己。
学习编程,就要泡编程圈子,这个圈子可以是浏览相关的技术博客,也可以是阅读相关的技术书籍,反正主打的就是沉浸感,把自己泡在一个技术学习圈子里。
举个例子,对于数据结构和算法的学习,我在课堂上学习了栈这个数据结构,那就去围绕“栈”去展开它的“生态”建设。去浏览相关的技术博客,或者哔哩哔哩视频,学习栈的应用,再去了解与栈相关的算法。这样就对栈进行多次认知学习,也了解相关的算法,在实际开发中对栈的应用也有自己的认知和了解。
课外也可以阅读一些轻松的入门熟悉,例如《图解数据结构》《图解算法》,可以帮助理解学习成果,这样就是保证自己一次又一次地和某个知识进行会面,自然很快地对其有深入了解,成长地更快了!
维护好自己的编程圈子,建立好自己的学习生态,这是快速地成长不二法宝。
2. 建体系--贯通十七掌,练就第十八掌
在星爷的《武状元苏乞儿》中,被击倒在地上的苏乞儿发现被风翻起的武林秘籍,顿悟出降龙十八掌的第十八掌的招式就是将前十七掌融合成一掌,从而击败boss。
编程学习也是如此,前期花了一段时间把java的知识点学习一遍,之后又去学C++或者其它技术内容,又或者是学习某个技术栈,跟着网上的七零八碎的知识内容学,今天学习了接口,后天学习了抽象类,大后天又学了继承···虽然这样也能把一项技术栈的基本知识和要点“拼凑”齐全,但是缺乏一种融汇贯通。这在实战项目开发中的表现就是对技术基本要点的不扎实,对于基本的要点理解不透彻。
这样的学习方法好比是捡石头盖房子,看见一块石头就垒起来,可能最后也是堆出一间房子,但是远远不如看着设计图纸,有目的和方向的去放置砖头的做法的人对这个房子的认知清楚。
所以要构建自己的知识体系,加深自己对技术要点的把握。
不仅仅是对于编程的基础知识,学习了接口,对比学习接口是怎么体现出抽象的?接口和同样体现抽象思想的抽象类有什么区别?继承在这门编程语言中是怎么体现的?这些问题自然是需要融汇贯通地思索学习过的内容才可能比较出一个一二三。所以不要零散地学习,最好阅读书籍,跟着学习课程系统的对某个技术栈的练习。
3. 要坚持--日拱一卒,功不唐捐
一项技能的练就,定是少不了日积月累的练习的。
即便是一个极客,也是在技术环境中长年累月浸泡出来的。当然谈到具体方面,一些基本的素养养成是需要这种日积月累地练习,不间断的去做的行为习惯。例如刷leetcode,联系算法,如果没有接连几天地刷题,那种刷题地状态和感觉是很难获得的。只有说是养成连续刷题的习惯,保持一种对算法习题的一种感觉,这无疑对日常开发和核心逻辑代码的编写是大有裨益的。尽管在开发中实际要造轮子的地方不多,大都是用别人已经造好的好用的轮子去实现业务功能,但是对轮子原理的理解也是有帮助的。
对于技术的追寻需要一盏长明灯,我们不需要对技术有多么热爱,每天去给长明灯添一点灯油,保持一个持续发光发热的状态,总是暖暖的。正如我的个人签名一样---“日拱一卒,功不唐捐!”;
4. 肯折腾--离不开的实践
编程学习是个与计算机打交道的过程,是一个实战性的过程。
很多编程大牛对于新人的学习的建议是多上机,多写代码。代码写的多了,自然会领悟一些编程技巧,只有保证自己一直在练习,在探索折腾,才可能保证自己的代码质量的提高,自己对某一方法理解的加深。
肯折腾是快速提升自己的工程能力,动手能力的唯一的好方法。多浏览一些github之类的开源仓库,尝试理解或者与原作者共同维护开源项目。
学习操作系统的最高境界---无疑是自己开发一个简单的操作系统。
要想对一门语言底层的了解---开发一个编译器(解释器)
只有把这东西落地实现了,才会体验到真正的那些相关的理论知识的应用道理。
写在结尾的话!
先写到这里吧!真的是写不下去了,不过作为初稿,发布之后还回修改完善的哈~~
感谢你的阅读!
我是个菜鸡!希望在这里认识你,点个关注,我们一起学习进步!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
张春
金牌会员
这个人很懒什么都没写!
楼主热帖
聊聊容灾演练-练什么|深度好文 ...
彻底搞懂Docker容器与Kraft模式kafka集 ...
Redis概述及基本数据结构
Eclipse连接SQLServer2008
【CSDN官方】开源又好用的国产SPL ...
干货|APP自动化Android特殊控件Toast识 ...
2022十三届蓝桥杯国赛题解
Velero系列文章(四):使用Velero进行 ...
Avalonia项目在OpenKylin运行踩坑 ...
恭喜你~遇到了最有趣的算法(三)数论 ...
标签云
挺好的
服务器
快速回复
返回顶部
返回列表