springboot极简教程001-开始

2018/10/24 springboot 共 3062 字,约 9 分钟

前言

写于2018-10-24

作为一个长时间使用C++语言的客户端开发来说,居然也要开始学习和使用springboot,就连我自己都不敢相信,甚至觉得诧异。上个周末花了两天时间看了一些教程并做了一些练习,自我感觉入门了,所以记录一下,可以给没有任何基础的人作为参考学习。但是同时也想说一些自己的理解和感悟,特别是在语言与框架上的一点比较和看法,例如对于C++、Java、Python,Django之于springboot。

就目前的了解来看,有以下几点,当然这些看法可能会随着时间以及对springboot的了解而变化,这不重要,重要的是得有自己的看法:

  • Java的确是个很啰嗦的语言(相对于C++来说,相较于Python的话更是如此)。
  • springboot的优势在于生态,以及对spring的封装。
  • 对于创业公司来说,Django也是不二之选,代码量要极少,开发速度要极快。
  • 对于大型项目或者大型公司来说,Java的好处是稳定,更容易多人协作,所以更容易选择springboot框架。
  • Java的设计初衷和核心思想是:减少出错,让程序员的门槛更低,更易维护,更易协作,让问题和错误在编译器就尽可能地减少。
  • 根据Java的设计初衷引发:更容易多人协作,这个可以对比C++的大型项目开发,协作一帮C++的开发人员的难度要远远远远高于协作一帮Java开发。
  • 在Java里,如果同时存在注解和文件配置方式,要更倾向于使用注解,并尽可能大量使用之。
  • 得益于强大的IDEA编译器,进行Java开发是一件很舒心的事情,写代码如同行云流水般酣畅淋漓。
  • 很重要也是很致命的一点:由于Java属于静态语言,所以很多错误可以依赖编译器在开发阶段发现并解决。而Python属于动态脚本语言,很多问题不能在静态阶段发现,因此对开发人员的水平要求就要高一些,这也就是说如果你的团队里没有或者以后招不到较高水平的Python开发人员,还是使用Java吧。
  • 鉴于上条,对Java开发的要求就会降低很多,这样会导致一个问题,入门Java的人会有很多,市面上的Java开发人员的水平也是良莠不齐。
  • Django的ORM设计得是最方便的,没有之一,极简极快速。springboot的JPA那一套,看着就恶心。
  • MyBatis看着闹心,要默默在心里告诉自己:习惯就好习惯就好……
  • Django输在生态上。
  • Python的2.x与3.x版本差异在某种程度上阻碍了Python的发展,好在Python现在在极力推广Python3。
  • Python是个很好的全栈语言。
  • C++的开发要求更高,现在几乎招不到人了。在解决C++的崩溃问题上,所花费的代价是很昂贵的。
  • Python开发效率非常非常高。
  • 有人说Python的运行速度很慢,这个目前并不是主要因素,开发效率远重要于运行效率。
  • Java的设计初衷:源于C++并把C++中难以掌控的部分尽可能规范与避免,使得生产成本可以降低,维护成本降低,长期仍然看好。
  • Java很适合做编程思想交流,所以群体更容易壮大,也更容易诞生出很多设计模式。打个小比喻就知道了,让很多新人用C++交流对比用Java交流,就好比文盲用文言文交流对比用白话交流,并没有贬低Java的意思,这反而是Java的优势,白话并不会比文言文落后,反而文言文却消失了,白话文反而是文明进步的产物,因为它更容易交流,更容易让群体协作沟通,这就是Java的核心思想啊亲。
  • Java的代码规范做得很好,写出的代码也相对要优美的多。
  • 人生苦短,我用Python。

环境搭建

工欲善其事必先利其器,这个绝对真理。

软件安装

以Windows系统来进行springboot的开发,需要下载安装:

  • IDEA专业版,并配置好字体大小,并熟练掌握常用的快捷键及高效技巧,可以参见:IntelliJ IDEA高效开发必知必会
  • MariaDB,这个数据库软件是MySQL的分支版本,很多线上的生产环境都在使用,所以学习阶段就可以开始熟悉它。
  • Git:对于不支持SVN的地方可以使用Git,例如需要拉取分支。
  • SVN:可以用来搭建实验环境(可以参见:利用SVN搭建实验环境提高效率),提高效率,也可以拉取GitHub上的开源代码,效率比Git高一些。

为什么我会推荐SVN而不是Git,因为对于个人学习来说SVN要方便一些,特别是在Windows系统上,因为你不需要协调合作不需要搞分支,就没必要使用复杂的Git。

Maven设置国内镜像

不设置卡死你,Maven国内访问奇慢无比,即使用了VPN。改成国内的镜像,瞬间就完成了。方法如下:

打开IntelliJ IDEA->Settings ->Build, Execution, Deployment -> Build Tools > Maven

点击 Override。然后新建一个settings.xml.内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<mirrors>
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    </mirror>


    <!-- 中央仓库1 -->
    <mirror>
        <id>repo1</id>
        <mirrorOf>central</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://repo1.maven.org/maven2/</url>
    </mirror>

    <!-- 中央仓库2 -->
    <mirror>
        <id>repo2</id>
        <mirrorOf>central</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://repo2.maven.org/maven2/</url>
    </mirror>
</mirrors>

</settings>

多显示器

强烈建议配置多显示器,一边开文档、网页、参考代码,一边IDEA开发环境,速度嗷嗷地,学习成本降低30%,效率相应也大大提高。不多说,谁用谁知道。

文档信息

Search

    Table of Contents