Star's Awesome Collections 炫酷编程学习资料(持续更新)

说在前面:

我虽然在初中开始就有过一段时间的Visual Basic编程经历,但是正式的系统学习CS则是在高三选修 AP CS 课之后才开始的。在这短短的不到一年时间内,我一方面得到了学校内外许许多多高手的帮助(这里就不一一点名),另一方面也自己走了很多弯路。半年前傻乎乎买过的《Java Web一月速通》现在在书架上落了不知道多少层灰,在bilibili上想学习Java却点进Javascript视频也不在少数。

然鹅,这些努力都没有白费。整个过程中,我感受到了这个时代开源编程社区以及问答社区(如知乎,StackOverflow)对于新手的友好;完整生动的文档(Vue,MyBatis)让我这种小白少走非常多的弯路。同时,Github,CSDN,甚至B站上有非常多良心的UP主带来深刻又清晰的教程。这里我整理了一份Awesome XXX系列的,个人认为非常不错的,资料–并且一直会更新。

虽然我的编程技术不够好,带来的东西的“深度”或许不入很多人的法眼;但这些东西都是能够让新手少走弯路,迅速入门的哦!

Read More

心态,信心,与战略:wl转正终极攻略

图文无关 (X_D)

笔者自己的2018 Fall美本申请在前几天刚刚落下帷幕。本应该早在四月初收尾的申请季,由于一封waitlist的存在被强行延长了一月。而幸运的是,我在这一个月内为这封wl的奔波和努力最终都有了成效–我最终如愿以偿的被 UC Berkeley 录取。在号称“最难申请季”的今年,能以伯克利收尾,我已经非常满意。这里也想分享诸多wl转正的攻略以供学弟学妹参考。

Read More

AP最后复习-Several Sorting Methods in A Glance

时间不多,下午就要考试了,基础的知识相信大家已经有掌握,那么最后可以临时抱佛脚的就是比较关键的 排序方法 了。下面给出AP最常考到的三种排序方法的代码实现,大家可以在看的同时想一想这三种方法的实现原理以及机制。


PS:代码实现是我昨晚默写一次过出来的。在保证实习机制核心原理不改变的情况下,代码的优化其实非常不足(比如一个值被 computed 多次而不是存储为变量)。所以看看排序就好。

I: 选择排序 Selection Sort

Read More

AP CS复习(3)- 浅谈Java中的参数传递

之前的 ArrayList 我已经做了一个视频放在了B站上面,其中完整提到了如何自己使用数组和泛型等技巧实现一个动态数组。链接在这里,就不额外写博客了。

所以这篇博客讲的内容并不会是具体的一个类库,而是Java语言层面的有趣设定–参数传递的方法。不同的编程语言在一些设定,比如 GC动/静态类型 , 传参方式 上都有所不同。而掌握这些细节无论是对于程序的优化或是AP考试都有巨大的帮助。

Read More

AP CS复习(1)- String类及其API


很久之前就有开一个博客写文章的打算然而迟迟未能动笔。最近正好发现没有什么专门复习AP CS的文章,所以就准备自己写一个。仔细想想,很多人会觉得AP CS很水很弱智,所以我希望我写出的东西能够不只是应付AP本身,还要能够挖掘相对底层一点的东西(如某些方法的实现)。
第一篇文章就从 Java.lang.String 这个概念讲起,大致概括AP的一些考点和一些额外的概念。

I: AP考什么?

先上一张图(来自CB Course Description

Read More