精华内容
下载资源
问答
  • c++软件开发心得

    千次阅读 2019-06-22 00:46:19
    作为计算机科学与技术专业的学生,开发软件是一项基本能力,软件开发的好坏最关键的是对项目实际的思考,其次才是熟练的语法知识,只有思考清楚来龙去脉甚至是框架才能游刃有余的写出好的代码。本学期学习了c++的...

    作为计算机科学与技术专业的学生,开发软件是一项基本能力,软件开发的好坏最关键的是对项目实际的思考,其次才是熟练的语法知识,只有思考清楚来龙去脉甚至是框架才能游刃有余的写出好的代码。本学期学习了c++的面向对象的语法知识和三大特性,从开学到现在依次开发了通讯录管理系统、ATM管理系统、图书管理系统,对这些系统的思考由浅入深,由最初的只是通过封装类完成程序设计再到结合实际情况的继承再到多态性的利用,程序越来越贴近于实际生活中的实例。虽然代码长得不漂亮,但是最核心的部分实现了,这比没用的图形界面重要的多。
    在开发初期,我写的不算好,说句难听点的就是垃圾代码,为什么呢?一是因为代码冗长效率差,二是因为代码功能不完善,不能把一个功能在任何情况下的状态都考虑到。说实话,我觉得我写的还算是有自己的东西,但是依旧还是一团没有灵魂的代码,没有给人一种个性鲜明的感觉,这的的确确是我掌握的c++东西太少的原因,正是因为掌握的太少,所以写起来畏手畏脚,总是用那几个语句。要想真正写出有灵魂的代码,首先必须熟练掌握语法知识,做到有了思路然后也可以这么写代码,做系统就是这样,思路有了,不一定能写出代码。其次是要独立思考,把自己思考的成果用代码的形式表达出来。以上可以做到,但是在实际开发过程中,想好思路和框架比代码语法知识更关键,因为永远有不会的知识,c++primer看完了也不一定能解决实际情况里遇到的问题。所以,这又再次证明了思考和思想是多么的伟大,它让人类避免机械。一个好的代码一定是思想丰富,代码流畅的。
    所以,经过这个学期的实际经典项目开发,我认为软件开发有如下流程:
    1.想好整体框架思路,把主要功能的细节思考清楚;
    2.设计类,大体分为数据类和操作类,想好成员有哪些;
    3.设计函数:构造、析构、拷贝构造、重载(友元还是成员)、功能函数、get…set等等;
    4.写好一个函数测试一遍(这一步很关键,试想如果一口气写2000行代码,中间完全不测试,到最后出来bug就不好调试了);
    下面说说面向对象我的理解:在开发过程中,始终记得c++是一门面向对象的语言,而面向对象,就是把实际问题中的实例抽象成为一个类,作为自定义数据类,来实现符合实际操作需要的功能。这里的对象,就是现实生活中的实例。所以,面向对象提供了一种解决复杂问题的方法。拿我做的几个不成熟的系统来说,图书管理系统把对图书的管理抽象成为图书类和功能类,如果一个程序员想要编写代码去实现需求,他需要将实际情况抽象,想管理书,就抽象成我上面说的类。
    这学期的c++课已经上完了,自己从老师的课里学到了很多东西,同时也意识到了c++这个语言是非常的丰富多彩,深邃奥妙的,而我们所学的,只是皮毛而已,如果用我们课上所学到的c++知识去面试,去真正步入社会解决实际问题,真的是远远不够的。皮毛,顾名思义,只涉及表面的东西,不深入,历史告诉我们,肤浅的理解永远无法真正做出有价值的东西。所以,c++深入的,深刻的,底层的东西,还是要通过不断地自学,自学,最终的目的肯定是做到精通,才能研究出并做出好的东西来。
    总结全文:深入思考!条理清晰!融会贯通!做到这些才可以说自己正在开发一款好的系统,而不仅仅是一款系统,一款平庸的系统。

    展开全文
  • C++软件开发岗位要求

    千次阅读 2019-12-22 17:34:05
    1.数据库、并行计算方向 统招统分硕士及以上学历,计算机...2.C++开发工程师 IT方面学士或学士以上学历; 熟悉Windows图形界面开发技术MFC或WTL,熟练使用开发工具VisualC++; 掌握C/C++编程, 基本功扎实...

    1.数据库、并行计算方向

    1. 统招统分硕士及以上学历,计算机相关专业优先
    2. C/ C++基础扎实,深刻理解面向对象编程技术
    3. 熟悉stl、boost常用库,并了解其原理
    4. 熟悉socket通信技术
    5. 精通多线程编程
    6. 熟悉多种设计模式
    7. 掌握Linux环境下的C/C++/Go/Python等1至2种以上语言

    2.嵌入式软件开发

    1. 2020级硕士应届毕业生,计算机、电子、通信、测控、控制、自动化等电子类相关专业;
    2. 连续实习至少三个月,每周三天以上,表现优异可直接留用;
    3. 精通C/C++编写语言,具有良好的代码风格和编程习惯;
    4. 具备DSP/ARM/SOC等嵌入式系统软件开发经验优先;

    3. 界面开发工程师

    1. 重点综合性大学或理工类大学全日制统招硕士/博士应届毕业生,机械、计算机、软件、飞行器设计、力学、数学等专业,英语4级以上,能熟练阅读英文文档;
    2. 熟练掌握C++语言,开发过MFC应用程序;
    3. 诚实守信,具备较强的自学能力以及积极性,具备良好的合作精神

    4. 物联网

    1. 掌握嵌入式系统、无线传感器网络、 4G/3G/GPRS/GSM/NBIOT无线网络及网络建设现状、ZigBee 无线网络、低功耗 Wi-Fi 无线网络和 RFID 技术。覆盖 RFID、无线传感器网络、嵌入式开发、网络协议分析及测试等多种技术领域。

    4.数字城市

    1. 城市规划相关专业背景、GIS方向

    5.图形图像处理

    1. OpenCV经验

    4. C++软件开发工程师

    1. IT方面学士或学士以上学历;
    2. 熟悉Windows图形界面开发技术MFC或WTL,熟练使用开发工具VisualC++;
    3. 掌握C/C++编程, 基本功扎实;
    4. 熟练掌握STL、boost、apr、ACE库中的一种;
    5. 熟悉常用数据结构、算法;
    6. 熟悉TCP/IP协议,熟练掌握Socket编程;
    7. 熟练掌握多线程编程,对并发控制有深入理解;
    8. 熟悉Linux系统,了解Linux C/C++开发、调试工具gcc,g++,gdb,make等

    总结

    软实力:硕士学历,能阅读英文文献,具备独立思考的能力,会沟通,懂交流
    硬实力:扎实的C/C++编程基础
    扩展方向:根据不同的方向对不同的技术有所要求,主要包括SQL方向、QT方向、OpenGV方向、GIS方向、
    高级技术或者待掌握技术包括:并发编程、TCP/IP、Linux系统、设计模式
    无法弥补的缺陷:非科班
    知识体系
    目前应该做的:
    敲C\C++代码,对所学知识进行巩固使用!!!

    展开全文
  • C++软件开发学习路线

    2020-11-09 13:24:54
    C++学习路线

    C++学习路线
    在这里插入图片描述

    展开全文
  • Linux C++软件开发技术

    2013-10-19 19:50:37
     专注Linux/UNIX服务器端的软件开发(后台开发),培养企业所需的专业Linux/UNIX C++软件工程师。 课程涉及服务器端软件开发的方方面面:Linux/UNIX、C++、Boost、ACE、Shell编程、Oracle/MySQL、数据库建模、UML
    Linux C++软件工程师全科班
          
        * 培养目标:Linux/UNIX C++软件工程师
          专注Linux/UNIX服务器端的软件开发(后台开发),培养企业所需的专业Linux/UNIX C++软件工程师。

    课程涉及服务器端软件开发的方方面面:Linux/UNIX、C++、Boost、ACE、Shell编程、Oracle/MySQL、数据库建模、UML建模、项目实践、开发模式等等。我们希望从轩辕毕业的学员不仅是Coder,而且应该是Designer!

      * 请留意网站首页的“开课预告”板块
    http://www.xuanyuan-soft.cn

    课程大纲
    一、Linux操作系统

        * 系统环境:Ubuntu GNU/Linux、RedHat Linux AS5、FreeBSD
        * 课程要求:熟练使用常用的Linux/UNIX命令。
        * 时间:1周。

    二、Linux C++开发环境搭建、开发工具的使用

        * 涉及内容:vi、GCC、GDB、Make、CVS、Subversion、Eclipse CDT
        * 课程要求:
              o 熟练使用vi文本编辑器;
              o 熟练使用GCC工具链进行编译、调试、构建可执行文件或共享库/静态库;
              o 熟练编写Makefile;
              o 熟练配置、使用CVS和Subversion两种版本控制工具;
              o 熟练配置、使用Eclipse CDT开发工具。
        * 时间:1周

    三、C++语言

            C++是一门多范型编程语言,相对于C、Java、C#等C系语言,复杂度高,但一旦领悟C++的精髓,则能发挥C++语言的强大威力,为了让学员掌握C++语言编程技术,我们将这部分的课程分为五个部分:

        * 面向过程编程: Core C++
              o 涉及技术:C++基础:类型和声明、指针与数组、表达式与语句、函数、名字空间、异常、代码文件的组织
              o 课程要求:掌握扎实的C++基础知识。
              o 时间:1.5周。
        * 面向对象编程: 封装、继承与多态(encapsulation、inherit & Polymorphism)
              o 涉及技术:类设计、运算符重载、继承与多态。
              o 课程要求:正确理解面向对象的概念,用面向对象的思维和方法构建软件,正确地设计和使用类以及继承体系。
              o 时间:1.5周。
        * 泛型编程: C++模板(Template)
              o 涉及技术:类模板、函数模板、函数对象(Function object)。
              o 课程要求:C++模板是C++强大威力的技术支撑,是构建C++标准库、Boost类库、ACE框架等的基础,必须熟练掌握C++模板技术。
              o 时间:1.5周。
        * 数据结构与算法
              o 涉及内容:常用数据结构(顺序容器、链表、树)和算法(排序与搜索)的C++实现。
              o 课程要求:能实现常规的数据结构(容器如vector、list、statck、queue等),排序和搜索算法。
              o 时间:1.5周。
        * C++标准库应用
              o 涉及技术:标准容器(STL容器):vector、list、map、set等等;迭代器、算法库、IO流、C语言数学库等
              o 课程要求:对常用的部分如容器、迭代器、常用的算法、IO流,必须牢固掌握、熟练使用,对其它部分必须有认识,以免日后工作中频繁的编写标准库中存在的内容,重复制造轮子。
              o 时间:2周。

    四、C++ Boost模板库

            Boost是由C++标准委员会成员发起、众多C++界高手参与设计并实现的一个涉及面广、质量高且业已广泛使用的C++标准后备库,其中TR1已经被纳入C++0x标准库。这部分的课程将涉及其中一些常用的类库。

        * 涉及技术:Aiso、Thread、Interprocess、System、File System、Date Time、Format、Array、Lambda、Signals、TR1中的部分(Regex、Tuple、Smart Point、Hash Map、Hash Set等)。
        * 课程要求:必须掌握的类库有:Aiso、Thread、Date Time以及TR1中部分内容。
        * 时间:2周。

    五、ACE框架

            ACE是一个被广泛使用、设计优雅、高性能的C++通信框架(不仅仅是通信框架),其设计及实现被众多开源框架所借鉴。是构建稳定、高性能、高吞吐量、跨平台的服务器端程序的优秀框架。

        * 涉及技术:ACE Reactor框架、ACE Proactor框架、MultiThread支撑、Timer(Scheduler)、ACE Service Configurator。
        * 课程要求:以上列举的部分是服务器端编程必不可少的部分,均需熟练使用。
        * 时间:2周。

    六、数据库开发

            专注Oracle 10g、MySQL5.0+。这部分的课程分为以下三大块:

        * SQL语言:
              o 涉及技术:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。
              o 课程要求:熟练使用SQL语言。
              o 时间:1周。
        * Oracle和MySQL存储过程、函数、触发器
              o 涉及技术:PL/SQL。
              o 课程要求:熟练编写Oracle和MySQL存储过程、函数、触发器。
              o 时间:1周。
        * C++数据库开发
              o 涉及技术:OTL或DTL(两个高性能、易用的C++模板类,针对各大主流数据库如:Oracle、DB2、SqlServer、MySQL等)。
              o 课程要求:熟练使用OTL和DTL进行数据库编程。
              o 时间:0.5周。

    七、软件工程

            一个优秀的软件工程师不仅具备优秀的编码能力,更应该拥有优秀的软件设计思维和方法,以下课程也是轩辕学员必修的内容。

        * 涉及技术:数据库建模、软件建模、GOF设计模式、文档编写
        * 课程要求:掌握数据库建模、软件建模的思想和方法,熟练使用建模工具,尝试用设计模式来思考软件的架构。至少学会编写《详细设计说明书》、《概要设计说明书》、《数据库设计说明书》。
        * 时间:1.5周。

    八、项目实战

            轩辕提供多个企业级实战项目供学员选择,如:电信级IM Server、电信级Billing Server等基于UNIX或Linux下的高负荷、大压力的C++ Server端项目,同时提供Client端程序以便联调及测试。

        * 涉及技术:本项目将涉及学习阶段所有内容。
        * 项目要求:学员按分组,分工、协作,共同完成项目,最终评估两个方面:软件架构设计、软件代码实现质量。
        * 时间:4周。


    昆山轩辕高端IT培训中心
    Linux C++软件工程师训练营
    Q Q: 570508473
    主 页:http://www.xuanyuan-soft.cn
    展开全文
  • 跟新员工交流时,对C++软件开发做了一些简单的介绍,下面是笔记。   <br />1.  (++i)比(i++)的执行效率高,所以应以前者来替换后者的使用。注:某些编译器在生成汇编时,会对后者进行优化,优化...
  • 100元的C++软件开发培训班

    万次阅读 热门讨论 2008-06-16 23:57:00
    C++软件开发培训(2008-6-16) 1、培养目标l 程序设计入门,懂得怎么使用C++编写简单程序。l 掌握程序设计方法,领会面向过程、面向对象和模板的程序设计。l 熟练地使用C++解决问题。l 每个人看懂1000个例子...
  • 作为一名本科机械电子,研究生研究计算机视觉方向的211应届毕业生,如何才能从事C/C++软件开发类的工程师呢?如果能有机会进入大厂呢?跟大家一样,非科班出生的我一开始也很迷茫,经过大量查找资料,终于有了一条...
  • c++软件开发第三方库大全

    千次阅读 2013-03-15 14:57:20
    c++软件开发第三方库大全1.boost 这个使用的人多不多说了2.pthread windows下的posix线程实现3.libcurl 一个有名的开源网络爬虫库 阿里旺旺中使用到了4.libeay32 OpenSSL Library5.libtidy 一个专门解析htm的库6....
  • 广联达2019C++软件开发

    千次阅读 2019-01-05 16:46:54
    一、先做两道编程题,直接在A4纸上手写代码,题目很简单【20min】 1.对一升序排列的数组,找到两数之和等于指定数N,任意一组输出即可; 2.对于升序排列的数组,找到其下标与该数大小相等的数,找到任意一个输出...
  • C/C++软件开发工程师

    千次阅读 2019-02-23 21:30:38
    1.1程序设计基础C/C++  1.2操作系统 线程、进程、内存管理、用户编程接口 1.3计算机网络 1.4数据结构与算法 1.5数据库 SQL功能、内连接与外链接、事务、存储过程与函数、数据库范式、触发器、游标、数据库...
  • 百度2021春实习C++软件开发一面面经

    千次阅读 多人点赞 2021-03-29 14:37:03
    有没有过多线程的编程经历 C++中移动构造和拷贝构造之间的区别(移动构造我之前都没听说过。。。) 是否知道智能指针,说下shared_ptr与与其他智能指针的区别 一面大致是45分钟左右,大部分都做出了自己的回答(有些...
  • 在日常生活中我们遇到的和时间相关的概念有北京时间、时差、12小时制、24小时制等,在软件开发中我们也经常遇到和时间相关的概念,软件虽说是一个虚拟的事物,但它仍然是来源于生活,不会脱离生活。我们在开发中遇到...
  • C++软件开发经典面试题目

    千次阅读 多人点赞 2017-09-01 10:43:05
    继承主要实现重用代码,扩展已存在的代码,节省开发时间。子类可以继承父类的一些东西。 多态 定义:“一个接口,多种方法”,程序运行时才决定调用的函数 实现:C++多态主要是通过虚函数实现。虚函数允许...
  • 这些年一直从事Linux下C/C++软件开发,学习工作中用到了不少开发工具,一直想做个总结,却总是因为这个原因那个原因,未能动笔。趁今天天气凉爽,空气清新,花点儿功夫,做一个小结啦,防止以后忘了。 一、代码...
  • C++ 软件开发多国语言解决方案汇总

    千次阅读 2019-07-17 15:20:45
    基于Qt的多语言开发工具:Qt Linguist 以Unicode为核心 参考:http://www.ibm.com/developerworks/cn/linux/l-cn-ccppglb/ 多国语言的存在,使程序员在编码处理上花费了大量时间和精力;然而各种各...
  • 关于C++和python的书: C++ Primer Plus 第6版 Effective C++中文版 Effective_STL中文版 STL源码剖析简体中文版 Python Cookbook第三版中文 数据结构和算法: 数据结构与算法分析:C语言描述 大话数据结构 剑指...
  • 联想面试(C++软件开发

    千次阅读 2017-11-15 19:32:30
    C++四种类型转换:static_cast,dynamic_cast,reinterpret_cast,const_cast区别 MFC消息映射机制 32位与64位区别 函数指针 Git如何版本管理,如何上传 SVN 构造函数为何初始化 视图 在技术...
  • C++软件开发主要领域及方向

    千次阅读 2013-08-23 22:51:07
    1、服务器端开发:很多游戏或者互联网公司的后台服务器程序都是基于C++开发的,而且大部分是linux,unix等类似操作系统,所以说,你如果想做这样的工作,你需要熟悉 linux操作系统及其在上面的开发,熟悉数据库开发...
  • 2020届华为C++软件开发实习面试经验

    千次阅读 2019-04-11 15:33:45
    1.感觉技术面试重视基础,问c++的基础知识比较多,其它的比如网络通信和多线程都是根据简历中问,感觉问的也不是特别深入。 2.笔试没通过的题下来一定要再做一遍,我一上来面试官就让我再把之前没通过的题再手写一遍...
  • 链接:https://pan.baidu.com/s/1Wz04Bnyw3qkFqUTvcqHaHg 密码:lne4 本书为完整版,以下为内容截图:  
  • 一、面试问题 1、请先进行自我介绍 ...3、平时是在windows下做开发还是在linux下做开发? 4、C++基础知识面试: 指针和引用的区别? 什么是虚函数,他有什么作用?(答的不在重点上) 请说下什...
  • 前几天做了招银网络科技的笔试,今天刚电话面完,面试内容主要涉及C++基础知识、计算机网络、协议、数据结构等 以下是整理的面试问题: 1、介绍一下static的各种用法,static修饰的变量在别的文件中可以使用吗 2...
  • 发表: 2004-08-07 15:23:48 人气:33 楼主 分值:0 [原创]VISUAL C++软件开发中几个常用功能的实现介绍 在VCHELP论坛中间,常常见到很多软件开发中提到的最多的基本问题,现在进行列举出来,希望对各位有用。...
  • 这是五月份面试的笔记,发现面试博客... linux C/C++服务器后台开发面试题总结   1.linux多线程函数的具体使用;  linux多线程pthread系列函数详解 2.libevent面试题,libevent开发;   3.多线程编程面试题 ...
  • 选择题 选择题大概考了:哈希索引,排序算法复杂度,vector 迭代器失效,虚函数、虚表、虚指针,动态绑定,给定二叉树的前序遍历,中序遍历让求可能的后续遍历, Linux 文件权限与控制,文件控制块分为主部和次部的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,518
精华内容 9,007
关键字:

c++软件开发

c++ 订阅