Skip to content
  • 首页
  • 留言
  • 关于

Share the joys of programming and technology

土木想往土木软件开发方向发展,应该如何准备

土木想往土木软件开发方向发展,应该如何准备

2021年5月22日 liyanliang Comments 1 comment
阅读次数: 686

最近很多学生、做结构设计的想要转开发,请教我应该如何准备。作为一个土木专业背景的开发人员,一路走来走了很多坑,所以,我想把我的学习经验写在这里,希望对大家有用。

Contents

  • 1 一、入门篇
  • 2 二、提高篇
  • 3 三、专业篇
  • 4 写在最后:
  • 5 相关文章

一、入门篇

如果你没有基础,可以先按照以下的专业课程进行学习。

1.学习C++。

很多土木软件开发公司用的开发语言都是C++,包括广联达、迈达斯、盈建科、PKPM。C++也是主流的开发语言,各大互联网的底层开发也都会用到C++,所以,建议大家首选的开发语言是C++。

C++也是被称为最难的语言,建议大家可以先学习C语言,学习C语言对后面学习计算机的体系课程有很大帮助。推荐阅读《C Primer Plus》,可以对照这翁凯老师的公开课视频 程序设计入门 。这本书虽然厚,但是都比较简单,也很全面,刚开始学习编程会很难,很多东西都觉得比较抽象,一定要在电脑上把书上的例子敲出来,编译运行,慢慢地入门后就会学的很轻松。

当你学习了C语言之后,再学习C++就会轻松很多,推荐阅读《C++ Primer》,把配套习题集《C++ primer习题集》也做一下,推荐课程唐佐仁《c++语言课程深度解析》。(ps:关于本文的提到的课程,这里并不是打广告,都是我学习后觉得好的课程)。

2.学习数据结构与算法。

做土木软件的开发,你不需要学习很高深的算法,但是基本的数据结构和算法必须得会,也是面试中必考的知识。推荐阅读 《C++数据结构与算法》,这本书我觉得是比较适合学习C++方向的学习的,也有很多人推荐《算法(第4版)》,个人不是很建议。还有算法界的圣经《算法导论》,个人也不建议看,难度较大,而且比较偏于理论。视频课程推荐慕课网刘宇波老师的课程《算法与数据结构》,用户评价100%好评,这辈子听过最好的课程没有之一。

3.QT或MFC

广联达一般用QT,迈达斯和盈建科等用MFC。QT不了解,这里暂不做介绍。

MFC看孙鑫的视频《孙鑫C++讲解MFC》及其书籍《VC++深入详解》。视频比较老旧,但也是比较经典的。网上鸡啄米的教程《VS2010/MFC编程入门》也很不错,我习惯把它当字典用,哪里不懂点哪里。

4.面试准备

C++面试书籍推荐《C和C++程序员面试秘笈》,算法面试书籍推荐《剑指Offer》。广联达的很多算法面试题都是从《剑指Offer》中摘抄的,可以好好看一看。


掌握了入门篇的知识,对于以为土木专业应届毕业生想要进入midas、YJK、PKPM做开发基本是没有问题的。对于已经工作想转开发的朋友,要求会比较高。如果你想去广联达,其面试对算法要求较高,当年毕业找工作时,在学校参加线上笔试,5道面试题,只懂了两道,难度极大。 建议看做《剑指offer》两遍,有时间也建议刷一下LeetCode。

二、提高篇

当你已经掌握了基础篇,或者已经开始进行开发工作,有了一定的开发经验,可以学习一下书籍强化自己的开发能力。

1.C++进阶

C++是开发中用到的主要开发语言,所以需要深入理解C++语言的各种语言特性。

a.推荐阅读《Effective C++:改善程序与设计的55个具体做法》,网上有言,有个人做java转做C++,立马上街买了这本书进行学习。这是一本非常好的书,也有助于一个新手程序员如何写出更好地程序,也避免了C++语言的一些坑。也推荐阅读其姊妹篇《More Effective C++:35个改善编程与设计的有效方法》

b.推荐阅读《泛型编程与STL》

STL是C++最强度的地方,可以学习了解一下,不过对于初级开发人员不建议太过于深究。

c.推荐阅读《深入探索C++对象模型》

这是深究C++特性的一本书,对于理解C++语言机制会有很大帮助。

2.MFC进阶

推荐阅读侯捷的《深入浅出MFC》。这本书在我刚开始学习编程时,看得一头雾水,但当我工作做开发半年后,再重新看这本书,有一种拨开云雾见天日的感觉。

3.设计模式

在开发中,单例模式、工厂模式、观察者模式是常用的设计模式,这里推荐阅读《Head First设计模式》,这本书以白话的方式讲述设计模式,有趣而又简单,及其推荐。

3.编程修养

a.推荐阅读《代码大全》,这本书是我工作半年后看的,及其精彩,看完后让我知道什么是好的代码,什么是垃圾代码,以及如何写优美的代码。这本书应该是开发人员必读的书吧。

b.推荐阅读《重构 改善既有代码的设计》,这本书也是一本让你如何写出健壮优美代码的一本书,以及教你如何重构代码,五星推荐。

c.推荐阅读《代码整洁之道》,为了不被领导骂你代码写得烂,赶紧看一下这本书吧。

三、专业篇

想要成为一名专业的开发人员,仅仅掌握入门篇和提高篇的内容是远远不够的,建议学习完整的计算机体系课程,也为以后转互联网或成为技术专家打下基础。

1.汇编语言

汇编语言对理解计算机底层以及后面的体系课程学习会有帮助,但也不是绝对的,在这门课上可以不用话费太多的时间,推荐书籍《汇编语言(第4版) 王爽》。

2.计算机组成原理

这门基础课很重要,不够是对后面体系课程的学习还是在工作中都会有很大的帮助,这门课属于内功的修炼。推荐书籍《计算机组成原理 唐朔飞 第三版》,课程推荐刘宏伟老师的《计算机组成原理》。

3.操作系统

对于土木设计软件的开发,操作系统不是很重要,但也推荐学习一下,构成完整的计算机知识体系。推荐书籍《计算机操作系统第四版》。

4.计算机网络

对于土木设计软件的开发,计算机网络不是很重要,但也推荐学习一下,构成完整的计算机知识体系。推荐书籍《计算机网络:自顶向下方法(原书第7版)》。

5.数据库和编译原理

这两门课也是计算机的基础课程,我学习后发现在工作中并没有体现出其作用,或者作用不大,可学可不学。

推荐书籍《数据库系统概念(原书第6版)》、《编译原理(原书第2版)》。

学习了以上的专业课程,几乎形成了一个计算机专业学生的知识体系,把基础学习掌握了之后,在工作中遇到什么就学习什么,有了基础了之后,不管学习什么方向,都会游刃有余。

写在最后:

上述是我的个人的学习历程,我觉得对我很有效,所以这只是我的经验之谈。谨希望此文对想转开发的你有帮助。

相关文章

  • 通过数学方法来计算short类型的变量w的低八位x和高八位通过数学方法来计算short类型的变量w的低八位x和高八位
  • C++实现一个简单的语言解释器C++实现一个简单的语言解释器
  • Midas XD-选筋助手开发Midas XD-选筋助手开发
  • Civil Designer开发-检测规范自动生成控制截面Civil Designer开发-检测规范自动生成控制截面
  • Civil Designer开发-公路桥梁承载能力检算评定Civil Designer开发-公路桥梁承载能力检算评定
  • Midas W-满堂支架快速建模助手开发Midas W-满堂支架快速建模助手开发

职场生涯
C++

Post navigation

PREVIOUS
设计模式-抽象工厂模式
NEXT
WordPress分页插件 – WP-PageNavi的使用(替换现有脚本)

One thought on “土木想往土木软件开发方向发展,应该如何准备”

  1. 匿名说道:
    2021年11月27日 09:53

    感谢分享!

    回复

发表回复 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

近期文章

  • ANR崩溃日志查看方法
  • 通过数学方法来计算short类型的变量w的低八位x和高八位
  • 3dTiles数据解析
  • Games101和Games202脑图汇总
  • LearnOpenGL脑图汇总
  • IBL计算总结
  • C++实现一个简单的语言解释器
  • OpenGL-法线贴图(Normal Mapping)
  • OpenGL-卡通着色(Cartoon)
  • OpenGL几何着色器实现贝塞尔曲线
  • WinDbg检查内存泄漏
  • OpenGL雾化效果实现-每像素雾化
  • OpenGL实现billboard效果(CPU)
  • 算法:寻找异常数字
  • OpenGL 几何着色器的应用
  • Midas XD-构件详图开发
  • Midas XD-选筋助手开发
  • Civil Designer开发-检测规范自动生成控制截面
  • Civil Designer开发-公路桥梁承载能力检算评定
  • Midas W-满堂支架快速建模助手开发

全站热点

  • C++编写的情人节小程序 (2,094)
  • 提取最小封闭区域 (1,721)
  • Modern OpenGL绘制圆柱体 (1,613)
  • OpenGL开发环境搭建-GLFW与GLAD配置 超详细 (1,503)
  • 截面特性计算程序-附源码 (1,303)
  • OpenGL绘制旋转立方体 (1,121)
  • 判断一个点是否在闭合区域内 (1,038)
  • WordPress分页插件 – WP-PageNavi的使用(替换现有脚本) (960)
  • OpenGL实现billboard效果(CPU) (876)
  • Midas W-满堂支架快速建模助手开发 (846)
  • 从DLL中动态加载一个函数:LoadLibrary和GetProcAddress的使用 (755)
  • Midas XD [错误] 右侧挡土墙的最下端深度必须小于地基的最下端深度 (719)
  • 两跨连续梁影响线绘制-附源码 (694)
  • 土木想往土木软件开发方向发展,应该如何准备 (686)
  • OpenGL几何着色器实现贝塞尔曲线 (674)
  • 通过Spy++抓取窗口以查询对话框id (627)
  • 使用ODA数据库出现 “ODA_ASSUME”: 找不到标识符的错误 (548)
  • #pragma message 编译时提示信息 (534)
  • OpenGL雾化效果实现-每像素雾化 (522)
  • Midas XD-构件详图开发 (479)

分类

  • C# (3)
  • C++ (19)
  • GIS (1)
  • MFC (3)
  • ObjectARX (2)
  • OpenGL (11)
  • Revit开发 (1)
  • 学习笔记 (2)
  • 岩土 (2)
  • 算法 (1)
  • 结构设计 (7)
  • 职场生涯 (1)
  • 计算几何 (3)

归档

  • 2024 年 12 月 (1)
  • 2024 年 10 月 (1)
  • 2024 年 9 月 (1)
  • 2023 年 3 月 (2)
  • 2022 年 10 月 (1)
  • 2022 年 3 月 (1)
  • 2022 年 2 月 (1)
  • 2022 年 1 月 (5)
  • 2021 年 11 月 (7)
  • 2021 年 6 月 (3)
  • 2021 年 5 月 (2)
  • 2021 年 3 月 (2)
  • 2021 年 2 月 (8)
  • 2021 年 1 月 (18)

标签

3dtiles anr Bezier Curves BillBoard C++ CDN CivilDesigner DLL EasyX fog glTF MFC Midas W Midas XD NormalMapping ObjectARX ODA OpenGL OpenXML Open XML PBR revit WinDbg 基坑设计 影响线 截面特性 桥梁 桥梁检测 桥梁设计 算法 计算几何 设计模式

书签

  • 李燕良的CSDN
  • 崔济东的博客
  • C++爱好者博客
  • 陈学伟的博客
  • 贾苏的博客
  • 陈睦锋的博客
  • 孙勇的博客

统计

  • 0
  • 36
  • 8
  • 251
  • 109
  • 275,671
  • 80,877

实时访问地域

© 2025   liyanliang.net Copyright. All Rights Reserved.