8月5日至9月11日月复盘

8月5日至9月11日月复盘

最有用的概念

1.快速掌握最少必要知识 & 用用用

@编程

装机, 后端基础知识(RAILS101 & JBLISTING & JDSTORE), 部署,用用用

@英语

单词,音标,语法,用用用(查词典,查GOOGLE)

@设计

简洁(三,三,三),留白(61.8%)

2. 让自己快乐的方法,多学习和多运动。

每做完一件事情时,可以问自己两个问题:

1)你学到了什么?

2)你开心吗?

3. 什么才是真正的休息?

上网 + 玩游戏 + 看视频,等耗费大量注意力的事情,不是休息。 => 听歌,洗澡,做家务等是休息。

总结:

我发现让我很累的原因,原来根本就不是,每天学习太久了。而是:

1)晚上没有在11:15的时候关灯睡觉。

2)学习的时候,没有注意,每隔1小时,就主动地走动走动。

最有用的工具

1. to do list 清单

每周列出to do list 清单,每周快要结束的时候,核对自己是否完成任务。

2. 戒掉一个不好习惯的方法就是用另一个习惯去替代它

1)用听歌+学唱歌的方式 替代掉 看视频,综艺,电视剧的习惯。

2)看高质量的英文电影,ted, 美剧来替代自己看国产剧,综艺的习惯。

总结:帮助自己从看了上瘾,看了空虚,看了难受的恶性循环中走出来,做一些可以让自己真正快乐的事情。

最值得表扬的事情

1.在苹果电脑维修的7天时间里,并没有停止学习编程相关的内容。

@用windows电脑写教程,在此期间写了9个小教程,Rails101 & job listing & jdstore的核心代码都整理了一遍。

@用ipad预习新教程的内容。

2.中午午睡的时间不会超过50min, 这件事情做得非常棒!基本已经稳定了,感觉只要睡个30min,就会自动醒来。

@感谢万老师写的那篇和睡眠有关的文章,让我认识到午睡超过30min,就会起反作用。

8月31日至9月11日周复盘

8月31日至9月11日周复盘

最棒的概念

1.不要生气和焦虑。生气和焦虑所花的时间,可能远多于解决问题的时间。

1)遇到问题解决问题。

2)如果暂时不愿意解决问题,就警告自己不要焦虑和生气。

@电脑已经坏了,这是事实,你能做的就是耐心地等待,直到电脑修好。

@他已经又重开了一次游戏,你能做的就是接受这个事实,并告诉他这真的是最后一把了。

2.每做完一件事情时,可以问自己两个问题:

1)你学到了什么?

2)你开心吗?

@看了一集偶像剧,我没有学到什么,也不觉得很开心。

@看了一下时尚杂志,我看了几套特别喜欢的衣服,觉得特别开心,我的有几套衣服可以模范着搭配,算是可以复活了吧。

@读了一下英语,觉得自己读得越来越好听了,好开心,好有自信。

@我看了一部电影,叫三生三世,除了觉得画面很美,我完全搞不懂电影想表达个什么含义,没有觉得开心,也没有觉得学到什么。

@看了一天的电视剧,头晕倒倒的,一点都不开心。

@吃饱了还吃,吃得自己撑撑的,很难受。

@看综艺节目,看完觉得都是show,好假。

总结:把时间花在自己做了,真的会觉得开心的事情。

例如:

运动 & 读书。

如果真的要看视频,就看ted, 高质量的电影,或者美剧。

最有用的工具

1.在跑步机上,边看视频或边读英语进行学习。

既锻炼了身体,又学到了东西。

2. 比如写教程,可以现在文章上将整个项目的代码都写好后,再去做测试。

@写项目时,也可以先将整个概览写出来后,再去实操。可以按照Xdite的JDSTORE参赛手册试着看看。

@先以预习的方式看完新内容所讲的内容,了解新内容讲了什么,克服恐惧感。

9月11日rails 自动化测试

9月11日rails 自动化测试

o

  1. 预习新知识,了解rails 自动化测试的主要内容。(1.5h)

一个简单的闰年程序

  1. 闰年程序(第一版)
  2. 闰年程序(第二版)
  3. 使用rspec自动化测试
  4. 闰年程序(完成版)
  5. 重构闰年程序(最终版)

停车计费程序 part 1

  1. 初始rails 并安装 spec-rails
  2. 建立parking model
  3. 撰写parking model 的 validation测试
  4. 完成基本架构
  5. 准备一般费率测试案例
  6. 开始撰写一般费率的测试
  7. 完成一半费率计算

停车计费程序part 2

  1. 让 devise 产生 user model
  2. 修正前提接口
  3. 准备短期费率测试案例
  4. 开始撰写短期费率的测试
  5. 增加实作
  6. 重构测试代码
  7. 扩充长期费率计算
  8. 如何在测试中除错

用户验收测试

  1. capybara安装
  2. 测试一般费率缴费流程
  3. 测试注册流程
  4. 测试登入登出流程
  5. 测试短期费率流程
  6. 故意修改model api
  7. 小结

Web api 自动化测试

  1. 安装spec-rails
  2. 测试注册api
  3. 测试登入登出api
  4. 测试查询列车api
  5. 测试查询订票,修改订票,取消订票api
  6. 测试订票api
  7. 测试查询我全部的订单api
  8. 测试查询和更新喔的资料api

总结:

单元测试:及时获得反馈,并且可以快速修改和重构。

用户验收测试: 检测整个功能是否运作正常。

Web api测试:通过回传json 资料可以测试整个系统是否运作正常。很方便。

r

  1. 只关注最重点。还是满开心的。

i

  1. 不要想着要一次性吸收所有的知识,而是想着这次只吸收,读一遍就能吸收的知识。这样会开心很多。

d

9月10日 rails 环境安装

9月10日 rails 环境安装

0 2.5小时

  1. xcode(30-45min)
  2. homebrew
  3. Git
  4. imagemagick
  5. postgresql
  6. Rvm
  7. ruby
  8. Rails
  9. Atom
  10. git
  11. Heroic
  12. Iterm2

9月9日 0RID 学习新知识 API

9月9日 0RID 学习新知识 API

学习新知识

编程: 3小时

  1. 回顾复习, 网络概论(20MIN)

学习新知识 Web API 设计实做(2.5H)

  1. 抓取第三方资料

1)抓天气资讯: gem 'rest-client' & Nokogiri

2) 什么是API: Ruby 程序, HTTP Request, Rails, HTTP RESPONSE , JSON 资料

3)注册聚合数据,拿到API Key

4) 按照Postman进行初步测试。

5)用rest-client 抓下来看看。

  1. 串接第三方API 服务

1)初始专案,建立City Model

2) 抓取城市资料储存下来: lib/tasks/dev.rake & bundle exec rake dev:fetch_city

3) 在画面上显示出来:routes, controller, view

4) 更新城市天气: routes, controller, view

5) 保护 API Key: yml & gitnore

  1. 建立API 服务器

1)什么是REST API

2) 建立MODEL, train & reservation

3) 配置路由

4)产生Api controller

5) 实做 GET/trains

6) 实做 reservations 定位

7)完成其他部分:show & 座位号

  1. 实做认证API

1)装Devise 产生 User Model

2) 产生 API用的TOKEN

3)设置 current_user

4) 修改订票API

5)可以查询所有我的订票。

  1. 实作注册,登入,登出API

1) 实作 AutherController

  1. 实作用户更新资料 API

1)修改个人资料(照片档案上传

2)查询个人资料

  1. Jbuilder 用法

1)修改 train API

2) 修改 trains API 输出array 资料

3)可以使用PARTIAL 样板

4)输出分页资料

5)新增 Train Logo 图片

6) 修改 reservation API

9月7日 ORID 网络概论

9月7日 ORID 网络概论

O

编程: 131 MIN

阅读: 1.5h

英语: 30MIN

  1. 复习回顾(8MIN)

1)方法 Method

2) 散列 Hash

3) 对象, 每种数据数据类型,如String, Integer, Float, Array, Hash等等都是对象。

学习新内容(123MIN)

  1. 学习新知识 网络基础

1)数码网络是如何运作的呢?

数据包交换的方式。

2)什么是网络传输协议。

数据包的首部格式。

3)网络分层设计

数据连接层,网络层,传输层,应用层。

A. 数据链路层

B. 网络层

C. 传输层

D. 应用层 DNS 和 HTTP

  1. 学习新知识 DNS 网络名称系统

1)什么是DNS

2)DNS使用情景

  1. HTTP 超文本传输协议

1)什么是HTTP?

2)浏览器的HTTP 工具:浏览器Inspector

3) 认识HTTP 数据包

A. 认识HTTP Request : HTTP 方法, 网址, HTTP首部, 信息内容

B. HTTP 方法: GET , POST, PUT, PATCH, DELETE

C. Header首部

D. HTTP Response : 状态码, 首部, 信息内容

E. HTTP 的无状态特性,以及用Cookie做状态管理

4)什么是URL

5)什么是HTTPS 和 HTTP/2

6) 总结浏览器的Request/Response Lifecycle

R

I

D

9月8日

9月8日

  1. 看剧9小时
  2. 看书1小时

9月6日 ORID JDSTORE

9月6日 ORID JDSTORE

0

编程: 169MIN

  1. 结账页面 + 订单页面(60MIN)

1)

total:integer, default: 0

2)

<%= render_cart_total_price %>

3)

def create
  @order = Order.new(order_params)
  @order.user = current_user
  if @order.save
    current_cart.cart_items.each do |cart_item|
      product_list = ProductList.new
      product_list.order = @order
      product_list.product_name = cart_item.product.title
      product_list.product_price = cart_item.product.price
      product_list.quantity = cart_item.quantit
      product_list.save
    end 
  else
    render 'carts/checkout'
  end 
end 
  1. 使用者可以完成付款。(34MIN)
payment_method
def set_payment_with!(method)
  self.update_columns(payment_with: method)
end
def pay!
  self.update_columns(is_paid: true)
end 
  1. 管理者可以更改订单状态(67MIN)
rails g migration add_aasm_state_to_order
def change
  add_columns :orders, :aasm_state, :string, default: "place_ordered"
  add_index :orders, :aasm_state
end 
event :ship do
  transitions from::
end 
<%= render "admin/orders/state_option", order: @order%>
case order.aasm_sate do

4. 使用者可以取消订单 8MIN

if @order.paid? || @order.order_placed?

反思

1. 22MIN + 

R

I

D

0

9月5日 ORID JDSTORE

9月5日 ORID JDSTORE

O3小时

复习回顾

  1. JDSTORE教程。

1)后台CRUD + ADMIN_REQUIRED (72MIN)

mount_uploader :image, ImageUploader

storage :file
CarrierWave ::Minimagicek
process resize_to_fill: [800,800]
version :thumb do
    resize_to_fit: [400, 400]
end 
admin_required
def admin?
add_column :users, :is_admin, :boolean, default :false

2)使用者可以将商品添加至购物车。(50MIN)

current_cart.add_product_to_cart(@product)

def add_product_to_cart
  ci = cart_item.build
  ci.product = product
  ci.quantity = 1
  ci.save
end 
def find_cart
  cart = Cart.find_by(id: session[:cart_id])
  if cart.blank?
    cart = Cart.create
  end 
end 

3) 使用者可以铲除商品。 & 更新商品数量 & 结算(60MIN)

cart_item_path(cart_item.product_id)

@cart = current_cart
@cart_item = @cart.cart_items.find_by
<%= form_for cart_item, url: cart_item_path(cart_item.product_id) do |f| %>

cart_items.each do |cart_item|

R

I

D

9月4日 0RID

9月4日 0RID

03小时

  1. Xdite视频看+总结。

R

  1. MAC拿回来重启开机后,还是不能用。然后打电话投诉,因为这件事情,心情整整不好了2小时。
  2. 和房东的沟通也是不太顺利,让她补拍背面照时,没有说明正面照也需要重拍,结果把人家搞烦恼了。

I

  1. 不想打代码时,看看视频,总结总结也不错。
  2. 我的原则之一,绝对不要生气和焦虑。=> 我发现生气和焦虑只会让自己的大脑不能正常运转,并且生气和焦虑所浪费的时间可能远远多于解决问题所需要的时间。

@电脑不能用,当时维修人员已经给我过答复,如果拿回来不能用,会给我换硬盘。所以我跟本犯不着花2小时的时间去投诉,去生气。

总结: 遇到问题,解决问题。不要生气,不要焦虑。你就记者你生气和焦虑,只会让解决问题的成本和时间增加,让自己变得没有效率。

D

  1. 不生气,不焦虑,遇到问题,解决问题。