forked from HDP2017/HDP2017.github.io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsearch.xml
84 lines (84 loc) · 28.5 KB
/
search.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title><![CDATA[npm托管插件从制作到上传以及使用]]></title>
<url>%2F2018%2F08%2F02%2Fnpm%E6%89%98%E7%AE%A1%E6%8F%92%E4%BB%B6%E4%BB%8E%E5%88%B6%E4%BD%9C%E5%88%B0%E4%B8%8A%E4%BC%A0%E4%BB%A5%E5%8F%8A%E4%BD%BF%E7%94%A8%2F</url>
<content type="text"><![CDATA[npm托管插件从制作到上传以及使用为了代码重用等一系列原因,很多情况下需要像是引用Github上的开源插件那样,将自己的代码整理为插件,不论是否用npm托管,至少用在本地,作为一个可以随时在任何项目引用的第三方插件,很有必要。首先大概步骤分为三步:制作一个可以引用的package;上传至npm托管;项目里引用;以上三步最重要的是第一步,制作一个可以用于任何项目的第三方插件,制作好之后其实可以不借助与npm托管就可以使用了。本文介绍制作基于angular2+以及typescript的可以用于angular2+项目的插件。 0.准备工作环境:nodejs,npm,angular-cli这是基本上需要全局配置安装的。需要注意的是,可能这三个东西的版本不匹配的时候会出错。因此先安装node,再用node安装npm以及angular-cli一般不会出问题(都安装最新版本的)。但是可能电脑本身存在一个老版本的node,需要切换node版本,这里介绍一个叫做nvm的东西,下载安装之后命令行借助以下命令: nvm ls//列出本地已安装的版本以及正在使用的版本 nvm install x.x.x//本地安装x.x.x版本的node nvm use x.x.x//使用x.x.x版本的node 1.制作插件1.1创建先新建一个以项目名称命名的文件夹,在此文件夹内执行命令: npm init 也可以在任何位置打开命令行: mkdir name cd name npm init 执行init命令会有一系列的信息需要填写,此时可以一路回车,这些信息可以在之后的package.json文件修改。命令执行完成会生成一个package.json 文件,打开这个文件。 1.2安装依赖基于angular2+的插件需要安装的依赖如下:可以直接在命令里体现: npm add --dev typescript @angular/core @angular/common rxjs zone.js 安装的这些依赖是开发本插件使用,但是实际上引用至项目之后,这些依赖不应该是插件本身拥有的,而是应该项目提供安装的,因此在package.json添加如下: "peerDependencies": { "@angular/common": ">=5.0.0", "@angular/core": ">=5.0.0", "rxjs": ">=5.0.0" } peerDependencies作为前置依赖,插件本身不会实际安装这些依赖,实际由项目来安装。 1.3 tsconfig.json为了支持typescript需要一个tsconfig.json文件,内容如下: { "compilerOptions": { "baseUrl": ".", // 基于哪个目录编译ts "declaration": true, // 是否生成声明文件即*.d.ts文件,有了它才有TS的代码提示 "experimentalDecorators": true, // 用于支持TS装饰器如angular中的 @NgModule({}) 之类 "emitDecoratorMetadata": true, // 用于支持TS装饰器如angular中的 @NgModule({}) 之类 "module": "commonjs", // 模块化形式 "moduleResolution": "node", // 模块化形式 "rootDir": ".", // 以哪个目录为根 "lib": ["es2015", "dom"], // 支持编译的内置库 "skipDefaultLibCheck": true, // 是否跳过内置库检查 "skipLibCheck": true, // 跳过库检查 "target": "es5", // 编译目标版本 "suppressImplicitAnyIndexErrors": true, // 几个检查代码的规则 "strictNullChecks": true, // 几个检查代码的规则 "noImplicitAny": true, // 几个检查代码的规则 "sourceMap": true, // 是否生成 .js.map "removeComments": true, // 移除注释 "noFallthroughCasesInSwitch": true // 几个检查代码的规则 }, "exclude": [ // 编译时排除以下内容 "node_modules", "*.d.ts", "**/*.d.ts" ] } 其中都是typescript的规则,其中的“noImplicitAny”参数我设置为false,不然有些编译通不过。 1.4index.ts插件想让别的项目来使用自己的功能,就该先把自己的功能导出,index.ts就是这个作用,在根目录创建文件,代码规则为如下形式: export * from 'xxx';//xxx为路径 1.5“scripts”为了编译、发布等做准备,现在package.json添加”script”脚本,基本常用的如下: "scripts": { "prepublish": "npm run clean && tsc", // 清理并编译 "clean": "rimraf index.js index.js.map index.d.ts src/**/*.js src/**/*.js.map src/**/*.d.ts *.tgz", // 清理编译文件 "pack": "npm run prepublish && npm pack" // 执行编译并打包 } 其实还可以添加个link脚本,本地测试时候用,此处不多介绍,因为个人没测试,自己使用的时候直接打包,然后自己放进项目里。 1.6“ .npmignore”这个文件其实是为了发布准备的,不过我个人理解也可以方便本地测试。它主要的功能是忽略发布的文件,举例来说,发布不可能将node_modules文件夹的依赖也上传吧。根目录创建文件,内容如下: node_module syarn-error.log tsconfig.json .gitignore .npmignore yarn.lock//这个文件是使用yarn会产生的 *.ts !*.d.ts 2发布与使用修改项目信息,在package.json文件里修改项目的基本信息,最重要的是版本号。发布之前需要去npm注册一个账号,然后本地登陆账号: npm login 根据提示输入登陆即可。发布: npm publish 发布完成就可以在本地使用了: npm install --save xxxxx//xxxxx为插件名称 项目里引用与别的插件完全相同。 3插件功能前面的介绍只是一个没有任何功能的插件发布,最重要的,当然是功能的编辑,万事俱备。其实也简单,一般情况下会在根目录新建一个文件夹,命名为src。根据功能做就行了,做好之后在index引用出来。我遇到的问题:将类作为功能编写插件的话,每一个类需要添加@Injectable(),不然会报错,这里@Injectable()与注入依赖有关,如果不添加,很容易报循环以来的错误。 参考本文参考:插件制作1插件制作2注入依赖nvm]]></content>
<categories>
<category>前端</category>
<category>npm插件</category>
</categories>
<tags>
<tag>node</tag>
<tag>npm</tag>
<tag>npm插件</tag>
<tag>nvm</tag>
</tags>
</entry>
<entry>
<title><![CDATA[nginx服务器部署续之https和自启动]]></title>
<url>%2F2018%2F05%2F14%2Fnginx%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%83%A8%E7%BD%B2%E7%BB%AD%E4%B9%8Bhttps%E5%92%8C%E8%87%AA%E5%90%AF%E5%8A%A8%2F</url>
<content type="text"><![CDATA[证书http到https关键的一部分是证书,本文介绍生成本地证书。 安装openssl这是生成证书需要安装的主要工具。下载地址:点击下载下载完成后安装在任何位置,记住安装地址,之后配置环境变量。 在环境变量中添加环境变量 变量名: OPENSSL_HOME 变量值: (变量值为openssl安装位置); 在path变量结尾添加 : %OPENSSL_HOME%; 生成证书1.新建一个文件夹用来存放证书,例如SSL,之后在此文件夹下打开命令行。2.创建私钥输入命令 openssl genrsa -des3 -out xxx.key 1024 //xxx为文件名可以自定义 回车之后会提示输入密码,连输两遍,注意记住密码。3.创建证书:输入命令 openssl req -new -key lee.key -out xxx.csr //此处的xxx依然为自定义文件名 回车之后会让输入一系列信息,最重要的是 Common Name,这里输入的是域名,也就是https配置的需要访问的域名,如果是IP地址,输入IP即可(测试不需要输入端口号)。至此在SSL文件夹下会产生两个文件,分别为,xxx.csr与xxx.key。4.去除密码如果不进行这一步会在每次打开mginx的时候要求输入密码。命令: copy xxx.key xxx.key.org //xxx为自定义文件名 回车之后继续命令: openssl rsa -in xxx.key.org -out xxx.key //xxx为文件名 此命令需要输入密码,为刚刚设置的密码。5.生成证书命令: openssl x509 -req -days 365 -in xxx.csr -signkey xxx.key -out xxx.crt //xxx为文件名 至此证书生成完毕,可以看到ssl文件夹下共有4个文件:xxx.crtxxx.csrxxx.keyxxx.key.org 配置文件修改在nginx.conf文件中找到https服务的配置,如下: # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} 这里的配置与http的配置是几乎一样的,只是需要添加证书。 # ssl_certificate cert.pem; # ssl_certificate_key cert.key; 将这两句中的cert.pem修改为前边生成的xxx.crt的路径,cert.key修改为xxx.key的路径。注意这里必须是相对路径,测试过绝对路径会出问题。除此之外的端口监听,反向代理等都与之前配置HTTP的完全一样。注意nginx支持同时启动http与https,这里可以直接将http强制转为https,需要在http server添加如下代码: rewrite ^(.*)$ https://$host$1 permanent; 还有一个问题,设置完https跨域可能会有个错误提示,关于’Access-Control-Allow-Origin’的,意思是需要一个Access-Control-Allow-Origin,这样的话就在http server 添加如下: add_header 'Access-Control-Allow-Origin' '*'; 位置在location前。 自启动配置服务器重启之后nginx的自启动。思路是将nginx设置为windows服务,并将服务自启动。首先需要下载工具:点击下载将下载的文件命名为:nginx-service.exe。创建配置文件nginx-service.xml,内容如下; <service> <id>nginx</id> <name>Nginx Service</name> <description>High Performance Nginx Service</description> <logpath>D:\xampp\nginx\logs</logpath> <log mode="roll-by-size"> <sizeThreshold>10240</sizeThreshold> <keepFiles>8</keepFiles> </log> <executable>D:\xampp\nginx\nginx.exe</executable> <startarguments>-p D:\xampp\nginx</startarguments> <stopexecutable>D:\xampp\nginx\nginx.exe</stopexecutable> <stoparguments>-p D:\xampp\nginx -s stop</stoparguments> </service> 注意:代码里面涉及的所有路径需要修改为自己的nginx配置路径创建nginx-service.exe.config,内容如下: <configuration> <startup> <supportedRuntime version="v2.0.50727" /> <supportedRuntime version="v4.0" /> </startup> <runtime> <generatePublisherEvidence enabled="false"/> </runtime> </configuration> 之后在命令行运行如下命令(nginx安装路径): nginx-service.exe install 之后在Windows服务面板启动服务(可以检查是否已经自启动,并重启服务器测试)。]]></content>
<categories>
<category>前端</category>
<category>服务器部署</category>
</categories>
<tags>
<tag>前端</tag>
<tag>nginx</tag>
<tag>服务器部署</tag>
<tag>https</tag>
<tag>ssl证书</tag>
</tags>
</entry>
<entry>
<title><![CDATA[Angular4前后端分离项目的部署]]></title>
<url>%2F2018%2F03%2F29%2Fangular4%E5%89%8D%E5%90%8E%E7%AB%AF%E5%88%86%E7%A6%BB%E9%A1%B9%E7%9B%AE%E7%9A%84%E9%83%A8%E7%BD%B2%2F</url>
<content type="text"><![CDATA[本文主要介绍在同一台服务器使用jetty部署后端服务器,然后如何部署angular4开发的前端项目。两种思路,第一是直接将前端项目同样放在jetty;另一种是用nginx部署前端项目,和后端服务器直接分离。(本文介绍是基于后端服务器已经使用jetty部署成功) 直接扔在jetty本来后端服务器已经部署在jetty,如果直接将前端代码也放在jetty,省去安装配置nginx这一步。将build后的文件,直接放在jetty中webapps文件夹下与后端项目同级新建一文件夹(以mobile为例),重启jetty,后访问xx.xx.xx.xx/mobile,即可。需要注意的:按照这种部署方式,angular4前端项目会默认寻找xx.xx.xx.xx/下的后端服务,也就是,后端服务项目需部署在jetty的默认路径,即,root。 使用nginxnginx的优点不必多说,最重要的一个就是angular4前端最需要的跨域,如何使用见下文。 安装nginxWindows系统直接去官网下载即可nginx下载下载之后,在服务器里找到nginx想要安装的位置,直接解压。解压之后会得到几个文件夹,需要特殊关注的,也就是与配置项目有关的有这么几个:根目录下的nginx.exe——nginx启动文件根目录下的conf文件夹——配置文件在此文件夹下的nginx.conf文件根目录下的html文件夹——项目文件默认放在此文件夹 nginx指令安装完成之后即可双击启动文件开启nginx server,打开之后即可访问localhost,正常打开nginx欢迎页面即为安装成功。常用的nginx指令有几个:nginx——这也是一条指令,启动nginx,与双击启动文件效果一样nginx -s reopen ——重启nginxnginx -s reload ——重新载入配置文件,一般更改配置文件之后需要此指令nginx -s stop ——强制退出(不管是否有未处理数据,直接退出) nginx -s quit ——优雅的退出(有未处理数据将等待)以上指令皆在nginx安装文件夹根目录打开命令行工具即可执行 配置nginx上文提到的配置文件,这里主要对它进行操作。打开nginx.conf文件就可以看到默认的配置文件,主要找到server字段,默认内容如下(除去#注释部分): server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } 其实可以看到配置文件里,下文还有几个被注释掉的server字段,这也就是说,nginx支持同时配置多个server,当然如果多个server,端口肯定是不同的。主要需要更改的部分是listen以及location。listen为端口号,默认为80(有人说只有nginx才配拥有80端口0^0),由于我的后端服务jetty使用了80端口,这里就不能再用,改为8080。location字段有两项:root决定项目文件所在文件夹index决定了项目默认文件,如果第一个index.html不存在就寻找后面的index.htm我这里将项目所在文件夹设为mobile,默认文件同样为index.html。之后将angular4前端项目build后的dist文件全部放在nginx安装根目录的mibile文件夹下(当然是新建一个mobile文件夹)。配置完成后启动nginx即可尝试访问,一般来说需要加上端口号。 反向代理实现跨域通过nginx部署的话,首要解决的问题就是前后端分离,前端访问后端需要跨域。nginx支持反向代理进行跨域。本身在angular4项目开发的时候就需要跨域,当时使用的angular-cli进行反向代理实现的跨域,那个跨域仅限于在开发阶段运用angular-cli服务器。这时就没有,但是当时整个项目所有的后端请求都添加api。这就刚好用来nginx进行反向代理。同样的在配置文件里。添加如下代码: location /api { rewrite ^.+api/?(.*)$ /$1 break; include uwsgi_params; proxy_pass http://localhost:80; } 这段代码里的两个“api”都必须和angular4开发时候使用angulr-cli代理发送http请求时请求地址中添加的代理相同。即,开发时用angular-cli代理配置的是api,这里就也应该配置为api,当时是apis,这里也必须为apis。配置完之后,reload配置文件,登陆试试吧! 可能遇到的问题前端项目部署后,刷新页面就404这个问题是99%或者100%的人都会遇到的,具体原因是angular4的url使用的是H5的pushstate风格,如果正常访问登陆,当然是按照angular4的路由机制去寻找页面。一旦出现刷新页面的操作,那就会向后端服务发起请求,如果后端没有将请求定位到当前页,那么就会报404错误。这个问题网上有很多人遇到,也有多种解决办法,最好用也最快的解决办法就是将路由风格强制改为hash风格。即,将appModule里的imports中添加这么一句: RouterModule.forRoot(appRoutes, { useHash: true }) 或者,在providers里增加这么一句: {provide: LocationStrategy, useClass: HashLocationStrategy} 这就将路由风格强制为hash,访问项目,可见地址增加了#锚点,这就更改成功,刷新页面一切正常。 注意我自己的项目里面有两个地方做了上面的更改之后依然会出现问题,第一个是回到首页的跳转,我之前是直接在按钮的html里增加herf=”/home”,这个更改为点击进入函数之后用angular4的 Router.navigate(['home']); 另外一处是退出登陆按钮,以前的处理是location.href = “login”;以此来回到登陆页,当然我的登陆页路由是“login“。更改后为location.href = “ “;即让路由回到默认页,当然默认页就应该是login页。这两者的区别就是前者这样强制更改location.herf为login,并没有出现自动添加#锚点,导致找不到页面。后者直接回到根目录的默认页,也为登陆页。其余的解决方法,例如自定义404页为index页,个人认为不合理,毕竟不能一刷新就回到登陆或者home页。当然,本文的解决方法也不能说是最好的,因为在angular4的官方文档里就指出,如果没有不得不的理由,尽量使用H5风格的路由而不是hash。不过,在我还没找到更好的解决办法之前,就处于一个不得不的境地。 如果后端服务部署在tomcat呢和在jetty完全一样的以上两种部署思路。甚至如果tomcat占用的端口和jetty一样都是80,那么nginx的配置文件都不用改。 后续更新与总结以上两种部署思路,都会有自己的问题,最重要的是想在不修改原有的后端服务器路径的前提下去进行部署(我遇到的后端服务器其实是一个完整的项目,在已经投入使用的情况下最好不去更改已有的连接方式)。基于此,使用nginx再进行反向代理的话,只能代理到端口号,换言之就是后端服务必须部署在jetty或者tomcat的root文件夹,因此排除此方法。解决将前端项目直接部署在后端服务的问题,由于前端项目在开发阶段必须使用ng-cli的反向代理,整个项目的url都包含有api,现在不需要反向代理那就不需要这个路径中的API;另外后端项目现在在自己的文件夹下,那后端的访问路径就需要这个文件夹的名字,但是开发阶段没有。针对这两个问题在前端项目中进行修改。整体思路就是引入两个全局变量来判断需不需要反向代理以及路径,将整个项目的url访问都写成可变的(通过更改两个全局变量)。这样就适应了开发阶段的反向代理+无后端文件夹路径,以及部署时候不需要反向代理+需要后端文件夹路径。]]></content>
<categories>
<category>前端</category>
<category>服务器部署</category>
</categories>
<tags>
<tag>前端</tag>
<tag>nginx</tag>
<tag>服务器部署</tag>
</tags>
</entry>
<entry>
<title><![CDATA[你好,hexo]]></title>
<url>%2F2018%2F03%2F14%2F%E4%BD%A0%E5%A5%BD%EF%BC%8Chexo%2F</url>
<content type="text"><![CDATA[关于hexo与github搭载blog,是看到了一个大神小姐姐的blog之后,本来之前已经注册了简书,打算在简书写文章的,不过没写几篇。刚好搭一个自己的东西还是很不错的,当然,主要是因为hexo用起来简单,美观。 准备工作需要安装的东西,git、node。需要一个github账号。 安装hexo用node全局安装hexo mpm install -g hexo-cli 以前的版本是安装的hexo,现在都是hexo-cli 做好这一步,其实就可以开始试着新建一个项目了。 开始首先,新建一个文件夹,在该文件夹下打开命令行工具,win10可以使用powershell hexo init blogName//init可以简写为i,blogName为项目名称。 下一步可以打开刚刚的文件夹,可以看到有一个blogName文件夹,在里面打开powershell,运行 hexo g//相当于编译 hexo s//本地运行,默认端口为4000 这样就可以在浏览器输入local host:4000查看。如果可以正常打开hexo页面就算是成功了,这就是一个最简单的初始项目。接下来就可以进行个人的设计。 主题hexo优秀的主题有特别多,其实这部分完全按照个人喜好,而刚好我喜欢的那个blog风格就是用的next。这个主题是最火的主题之一吧。安装方法: git clone https://github.com/iissnan/hexo-theme-next themes/next 不管选择安装什么主题,安装之后需要配置才能生效,有两个文件特别重要,第一个位置项目根目录的_config.yml文件,称作站点配置文件,另一个位于项目根目录的\themes\主题名称_config.yml文件,叫做主题配置文件,几乎所有的配置都是修改这两个文件。打开站点配置文件,将theme字段修改为主题名称,例如,next。重新编译,运行就可以看效果。这里一边情况下需要执行一下hexo clean,清除之前的编译文件。 hexo clean hexo g hexo s 之后打开浏览器localhost:4000,就可以查看主题更改后的效果。 主题配置一般主题都会有GitHub或者是网站主页,进去可以查看主题配置方法,基本都是修改主题配置文件。比如next自带三种主题样式,可以随自己喜欢修改。推荐看官方文档,而不是找别人写的教程。 github截至现在,项目还只是个本地的文件,只能在localhost运行,借助GitHub就可以所有人都访问了。首先,需要一个github账号。注册之后就新建项目。现在的GitHub新建项目比之前的简单好多。选择New repository就可以一步步往下就可以了。 设置SSH Key主要是觉得配置了SSH之后推代码更方便一点。任意文件夹下打开git, ssh-keygen -t rsa -C "your email" 这样一路enter就可以创建好密钥,期间如果想设置密码,可以设置,这里我是没设置的。然后按照提示找到密钥文件的位置,打开复制就好。然后在GitHub点击setting,进去找到SSH选项,进去粘贴就好。 修改站点配置文件这一步找到deploy修改如下: type: git repo: 地址//刚刚新建项目的SSH地址 branch: master 下一步需要安装一个git插件,在项目根目录 npm install hexo-deployer-git --save 之后hexo d就可以上传,如果失败一般是git没有链接成功。回头重新仔细配置ssh,一般不会失败。 修改整个blog首页其实next主题的默认首页是文章,默认是直接显示每篇文章的全部内容,一篇一篇列下来,看起来与美观不沾边,不过可以修改只显示开头,然后多一个全部内容的按钮,这样会稍微好看一些。不过,做自己的网页,还是想要一个自己个性化定制的首页。其实写这篇blog的主要目的是为了这一块东西,因为我自己做的时候,这个东西卡了一天,找教程也没解决,最后请教文章开头提到的小姐姐,才解决。其实当时自己找教程没解决之后,后来自己摸索的时候,心里有个眉目,不过方法比较笨,经过小姐姐的解答,解决了。具体如下, 自己写一个index当然了,自己个性化首页,肯定需要自己写出来这个首页的index.html文件。这个文件当然可以引用一些js插件,位置写好就行。 位置至于文件放置的位置,需要分析一下。首先,项目编译之后会产生一个public文件夹,本地运行以及上传至GitHub都是这个文件夹里面的文件,一开始的想法是将编译后的public文件里的index.html替换为自己写的那个,然后再推入到GitHub,这样也算可以。不过每次都这么来的话,写一篇文章就需要重新手动替换一下,麻烦的嘞。 解决再回到编译,编译到public的文件,可以发现其实是项目的source以及主题的source文件夹里面的所有的文件,那么这就好办了。首先,卸载一个叫做主题渲染模块,hexo-generator-index,可以找到node_modules文件夹里面对应的文件夹整个删除,也可以手动uninstall,否则的话,自己的主页还会经过渲染。再下一步,将自己写的index.html文件放入主题下的source文件夹下,自己测试放入项目文件夹不行,还会经过渲染。当然,如果自己写的index.html文件用到了什么js插件的话,也同样放入该文件夹,我是直接放进去source下的js文件夹下,反正也都是js。最后,编译试试,推入GitHub。]]></content>
<categories>
<category>blog</category>
</categories>
<tags>
<tag>Hexo</tag>
<tag>Git</tag>
<tag>blog</tag>
</tags>
</entry>
<entry>
<title><![CDATA[关于HDP2017]]></title>
<url>%2F2018%2F03%2F09%2F%E5%85%B3%E4%BA%8EHDP2017%2F</url>
<content type="text"><![CDATA[HDP2017具体来说是一个昵称,所有有关于编程,或者说是自己项目有关的账号,包括而不限于GitHub、bitbucket、码云等等。 从HDP2017开始而我接触到编程的第一个账号也就是GitHub的HDP2017,这是在2017年初,具体应该是10号之前,当时由于自己学习C++未果,项目老师安排转JAVA,后来其实变成了前端。当时的项目老师(是我关于编程的最重要的一个老师),他让我申请GitHub账号并且克隆项目代码到本地,那是我这辈子第一次接触这些东西。其实2017算是我个人学习编程的元年,16年秋入学,第一学习学习C++,结果啥也没学到,直到从HDP2017开始,才算是真的打开这扇门。 前端开始当时的项目是将使用angular1.x+framework7的一个网页APP改写为使用vue+framework7,这个项目真正着手做,大概经历了四五个月。由于是改写项目,所以后台不用怎么动,这就也决定了后来的前端学习。其实这个项目是自己学东西的关键,一边有老师教,一边自己摸索,进度飞快,我们也一起解决了很多问题。尤其是17年夏天,暑假的那几十天时间吧,几乎就是白天自己写代码,晚上提交之后,老师查看并提出问题,或者布置下一个任务(老师在美国),每天推完分支更新之后,回去睡觉,第二天醒来老师就已经做好了新的一天的安排。回想起来真的很满足那个时候的自己。 前端+后来到了9-10月份,上一个项目已经基本完结,期间其实老师有要做Android的打算,我也已经配置好所有的东西并且写了几个页面了,不过最后搁置。后来转实验室的一个大项目,自己的工作差不多是做一个手机WebAPP,需要用angular4+bootstrap,由于继续使用老项目的后台和数据库,自己的活也就又只剩下了前端,自此至今,一直做前端。其实中间做Android的那一段时间,接触的Java知识也获益匪浅,虽然不怎么管后台,有了这个基础,不至于一无所知。 HDP2017+未来会不会从事前端或者IT相关工作,HDP2017不会放下,我的2017不会忘记,当然,还有那个最好的老师hanaldo!]]></content>
<categories>
<category>Me</category>
</categories>
<tags>
<tag>HDP2017</tag>
</tags>
</entry>
<entry>
<title><![CDATA[Hello World]]></title>
<url>%2F2018%2F03%2F08%2Fhello-world%2F</url>
<content type="text"><![CDATA[Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick StartCreate a new post1$ hexo new "My New Post" More info: Writing Run server1$ hexo server More info: Server Generate static files1$ hexo generate More info: Generating Deploy to remote sites1$ hexo deploy More info: Deployment]]></content>
<categories>
<category>Hello World</category>
</categories>
<tags>
<tag>hexo</tag>
<tag>Hello World</tag>
</tags>
</entry>
</search>