Coding in life...

a litter inspiration


  • Home

  • Categories

  • Archives

  • Tags

  • Search

句子的形成_名词作主语

Posted on 2018-11-21 | In 英语语法

句子的形成

概说:

任何一个句子一定由主语(subject,简写成S)及动词(verb,简写成V)形成。

John works hard。

有时主语可以省略,而形成祈使句。这种祈使句句首位原形动词,之前省略了You should(你应当)

Work hard = (You should) work hard.  
idea: 是不是句子以动词开头,找不到主语,就可以理解为是祈使句?

注意:祈使句变成否定形式时,要在原形动词前加Don’t
//这种祈使句是不是默认就是对方,你 ,类似希望你怎么怎么样的?

- Don't fool around 别游手好闲

new word

  1. opt vi 选择
  2. apt adj 恰当的

第一节 可作主语的词类

一般所见到的结构中,通常是以名词作主语,但除了名词之外,还可用代词,不定式或不定式短语、名词性从句、名词短语、表距离的地点副词短语等作主语

除了名词本身外就是下面这几种作主语了。(idea: 更细的就千万不要研究了)
- 代词
- 不定式
- 名词性从句
- 名词短语
- 表距离的地点副词短语

1.名词作主语

The child is apt to tell lies

2.代词作主语

He always keep his promise

3.动名词或不定式作主语

动词绝对不可以直接当主语。一定要变成动名词或不定式短语,如此才可以视为名词的对等语,作主语用。

idea: 动词如果放在第一个,那是不是就可以认为是祈使句了?

Seeing him makes me angry.  //动名词表示的是一种事实
To see him is my purpose of here
    - 动名词作主语,通常用以表示已知的事实或曾经做过的事情
    - 不定式作主语,通常表示一种意愿、目的或未完成的事。

注意:不定式或动名词短语作主语时,往往会形成主语太长的现象,古通常用代词it作形式主语,置于句首前,而将真正主语(也就是动名词或不定式短语)移至句尾。动名词移至句尾时,通常改为不定式短语。

idea:看见it在句首,先找找句尾的主语。it作形式主语的时候,主语置于最后。

4.名词性从句作主语:

A. 从事翻译时,我们会碰到这样的句子

  • He doesn’t study makes me angry (x)

注意:所谓句子,就是一开头就是主语的结构。句子绝对不能当主语,一定要变成名词性从句方可作主语

idea: 看见如果一开始就是主语,那这个就是句子的结构了,也就没有其他的来代替或做主语了,也挺好认。 //还有一点就是如果一开始是动词,祈使句吧,就这里理解好了

B. 名词性从句的种类

  • 名词性从句包括宾语从句、主语从句、表语从句、同位语从句。

    • idea: 原来名词性从句是相当于更高一层的,下面有四个子类
    1. 宾语从句
    2. 主语从句
    3. 表语从句
    4. 同位语从句
  • 名词性从句一共有三种:
    • that 从句
    • whether 从句
    • 疑问词所引导的从句

// idea: 这个地方我认为的就是名词性从句的格式,也就是具体的形式了。1. 由that开始的 。 2. 由whether 格式引出的 3. 由疑问词。。

  1. that从句
    任何一个主语起首的句子面前冠以that,即成that从句。
    // idea:一开始就是That肯定是了,Whether or 疑问词的就不一定了

  2. whether从句
    本从句系由可用yes/no回答的问句变化而成,这种可用yes/no回答的问句称为一般疑问句。

    • 问句由be动词时:
      • 主语与be动词还原,前面冠以whether
      • Is he happy?
      • whether he is happy //这里没有? 因为这个已经变为从句了,这里并没有主句。
    • 问句由一般助动词(can、will、may、should、ought to must、have)时:
      • 主语与助动词还原、前面冠以whether
      • Can he do it?
      • whether he can do it
    • 问句有do、does、did等助动词时:
      • 主语与助动词还原,再将do、does、did去掉,后面的动词一人称和时态进行变化。
      • Did he come?
      • whether he came

// idea: 这个whether 引起的从句,看后面的主语就知道了,如果是sv结构的(主语+动词的)就是从句了。这个叫名词性从句之whether结构。

  1. 疑问句从句:
    本从句系由疑问句(what,when,how,where,why)等引导的问句变化而成,这种由疑问词引导的问句称为特殊疑问句。

    • 问句有be动词时
      • 主语与be动词还原,前面保持疑问词
      • What is he doing?(问句)
      • what he is doing(名词性从句)
    • 问句有一般助动词时
      • 主语与助动词还原,前面保持疑问词
      • Where can he find it?
      • where he can find it //从句,为什么前面是小写明白了吧
    • 问句有do、does、did等助动词时
      • 主语与助动词还原,前面保持疑问词,再将do、does、did去掉,动词依人称和时态进行变化。
      • What did he write?
      • what he wrote //did 表示的是过去,所以这里去掉之后,改为过去时wrote
      • When did he come?
      • when he came //这个再也不是单独的一个句子了,现在是另一个句子的一部分了。
      • How does he do it?
      • how he does it //does 第三人称单数,根据:现在&he

注意:who、what、which(哪一个)为疑问代词,若在问句中作主语,变成名词性从句时,结构不变。

例如:

who came here?//who 是主语
-> who came here //名词性从句

what happened last night ?//what 主语
-> what happened last night? //名从

which was bought?
->which was bought

C.名词性从句的功能

我们已知,名词性从句由句子或问句变化而成,和动名词或不定式短语一样,名词性从句也要被视为名词。由于具有名词的特性,股可作主语、宾语或在be动词之后做宾语。

//idea:现在的想法是作主语的,1.名词 2. 代词 3.it形式主语(真正的主语在句尾) 4. 动名词(表示一个事实,曾经发生过的) 5. 不定式(表示意愿,或将来发生的) 6. 名词性从句,7. 如果开头是一个动词,就是祈使句了。
  1. 名词性从句作主语
    • That honesty is the best policy is a proverb (which) we should always keep in mind //主语:诚实为最好的政策
    • where he lives is still in doubt
    • Whether he can do it remains to be seen

注意:如名词或不定式短语,名词性从句作主语时,容易造成主语太长的现象,因此亦可用形式主语it代替,置于句首,而被代替的名词性从句则置于句尾

故上述句子可修改为:

- It is a proverb we should always keep in mind that honesty is the best policy
- It is still in doubt where he lives
- It remains to be seen whether he can do it //这个就是由疑问句转为的名词性从句,所以翻译的时候需要翻译成疑问句。
  1. 名词性从句作及物动词的宾语

*及物动词在英语中称作transitive verb,简写为vt ;宾语则称作object,简写为 o

  • I know that he will go abroad in the near future
    • vt know
    • o that he … feature //整个从句
  • I wonder whether he has finished the work
  • I don’t know how he’ll handle it.
  1. 名词性从句作介词的宾语

*介词在英语中称作preposition, 简写成prep。

  1. 此时仅能用whether从句或疑问词引导的名词性从句作宾语。that从句不可作介词的宾语

    • I am worried about whether he can do it
      • prep : about //这种介词的,不能用that做宾语
    • I’m curious about how he’ll cope with the problem
  2. 遇到介词,非要用that的话,宾语用一个名词代替,that作同位语从句

    • 介词 + the fact + that 从句 //that 作同位语从句
    • be + adj + that从句 //去掉介词

5.名词短语作主语

名词短语系由“疑问词+不定式短语”形成

//idea:名词短语就是由“疑问词 + 不定式短语”组成的
  1. 疑问副词
    • where to live //住哪里
    • whether to try again // 是否再试一次
    • when to talk to him //什么时候和他谈
    • how to do it //如何做哪些事

//idea:疑问副词 其实就只需要记一下 1. whether 2. how

  1. 疑问代词
    • what to do //做什么
    • whom to see // 看什么
    • which to buy // 买哪一个
    • whom to talk to //与谁谈 , whom 做to的宾语

注意:

  1. 疑问副词形成的名词短语中,疑问副词因为是副词的性质,故不做不定式短语中及物动词的宾语。但疑问代词形成的名词短语中,疑问代词因具有名词的性质,故一定要作不定式短语中动词或介词的宾语。故what、whom、which在上列名词短语中,作宾语

  2. 名词短语因具有名词性质,故亦可作主语,系由名词性从句化简而成

Where to meet him is not decided yet
== Where we should meet him is not decided yet

How to  handle the problem depends on how much money we can collect
== How we can handle the problem depends on how much money we can collect

// 读这种疑问词+不定式短语这种,感觉都是省略了我们这个。

表距离的地点副词短语作主语

from + 地方名词 + to + 地方名词
此为表距离的地点副词短语,亦可做主语,与单数的be动词连用。

From Shanghai to Beijing is about 1000 kilometers
== 主语也可以用it代替,形成下列结构
It is about 1000 kilometers from Shanghai to Beijing

Effective_Java_Item01_考虑静态工厂方法替代构造器

Posted on 2018-11-20 | In Effective Java

Creating and Destorying Objects –第二章

这个章节关系着创建和销毁对象:什么时候和怎样创建它们,何时并且如何避免创建它们,怎样保证它们被销毁用一种合适的方式,并且怎么管理任意的清除行为,这些行为必须在它们的销毁之前。

new knowledge

  1. manner n.方式,习惯,规矩
  2. timely adj 即使的,合适的 adv 及时地
  3. cleanup n 清除
  4. precede v 领先 ,在…之前
  5. probably adv 大概,或许
  6. prime 主要的,可能的 v 作准备
  7. get around 避开,到处走走,有办法应付
  8. end up 结束,死亡
  9. close 紧密的,关的
  10. dispense 分配 分发 免除
  11. be said to be 据说
  12. also 也,而且,同样
  13. compact n.合同,契约 v 使简洁,使紧凑 adj 简洁的
  14. lend vt 贷款 提供

Item 1:考虑静态工厂方法替代构造器

对于一个类传统的方式允许一个客户获取一个实例是提供一个公开的构造。有一种别的技术,这种技术应该成为每个开发者工具包的一部分。一个类可以提供一个公开的静态工厂方法,这个方法是简单的一个静态的方法,该方法返回一个类的实例。这是一个简单的列子来自Boolean(包装原始数据的类对于boolean基本数据类型)。这个方法翻译一个boolean原始数据类型的值进入一个Boolean包装类对象的引用。

1
2
3
public static Boolean valueOf( boolean b ){
return b? Boolean.TRUE : Boolean.FALSE;
}

注意这个静态工厂方法是不相同的对于工厂方法模式来自《设计模式》。这个静态工厂方法在这个项中描述并没有直接等价与《设计模式》。

一个类可以提供它的使用者用静态工厂方法替代,或者另外,公开的构造器有优势并且也有劣势。

静态工厂方法的一个优点在于,不像构造方法,他们有属于自己的名字。如果参数对于一个构造函数做不了什么,描述的对象将被返回,一个静态工厂有一个精心准备的名字会更容易使用,并且致使使用者的代码更容易被阅读。例如:构造函数BigInteger(int,int,Random),这将返回一个
BigInteger,这个是可能主要的,这有更好的表达作为一个静态工厂方法的名字 BigInteger。probablyPrime(这个方法被添加进Java4平台)

一个类可以仅有一个单独的给定签名的构造函数,程序员已经知道避开这种通过提供两种构造函数,这种函数的参数集合不同仅在于它们的参数类型的顺序不同的限制。这是一种很坏的想法。这样一个api的使用者将从来不会记得构造函数是这样,并且结束调用这样一个错误通过这个失误。人们阅读代码,用这些构造函数将不会知道这个代码,要是没有参考类的文档。

因为他们有同样的名字,静态工厂方法将不会共享在前一个段落限制讨论,在这种情况下一个类视乎必须多个相同签名的构造函数,用静态工厂方法替代这些构造方法并且小心地紧密的名字来强调它们的不同。

静态工厂方法的第二个优势是,不像构造函数,它们没有必要创建一个对象在每次它们被调用的时候。这个允许不变的类来提前构造使用一个预先构造好的实例,或者为了缓存一个实例作为它们构建的,并且可以分配它们来避免重复的创建不必要的重复的对象。这个Boolean。valueOf(boolean)方法阐述了这个技术:它从来不创建对象。这个技巧很相似于Flyweight pattern(轻量级模式)【Gramma95】。它可以极大的提高性能如果同等的对象被频繁的请求,尤其是它们是那种创建很昂贵的对象。

静态工厂方法能够返回同样的对象来自重复的调用的这个能力,允许类能够维持严格的控制实例在任何时刻都存在。这样实现的类据说是instance-controlled(实例控制)。有几个原因来写实例控制类。实例控制允许一个类保证它是一个单列或者一个不能实例化。而且,它允许一个不可变的值类来保证没有两个相同的实例存在:a.equals(b)仅仅可能是a==b,也就是同一个对象。这个是轻量级模式的基础【Gramma95】。枚举类型提供了这种保证。

静态工厂方法的第三个优点是,不像构造函数,它们可以返回一个任意它们的返回类型的子类型的一个对象。这个给你极大的灵活在选择返回对象的类。

灵活的应用是一个api可以返回对象,而没有让它们的类公开。隐藏实现类用这种流行导致一个非常简洁的API。这个技术提供它自身对于interface-based framework(Item 20)(接口基础框架),在这里接口提供自然的返回类型对于用静态工厂方法。

递归之一

Posted on 2018-11-20 | In 《算法》

编写递归最重要的三点之一

  1. 递归总有一个最简单的情况。
    • 方法的第一条语句总是包含return的条件语句
  2. 递归调用总是尝试解决一个规模更小的子问题,这样递归才能收敛到最简单的情况。


  3. 递归调用的父问题和尝试解决的子问题之间不应该有交集

二分查找。(用好重载是真的牛)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

//这个肯定是对外提供的api,下面重载的方法才是具体实现,真牛
public static int binarySearch(int[] orderArray, int targetValue) {
return binarySearch(orderArray, targetValue, 0, orderArray.length - 1);
}

public static int binarySearch(int[] orderArray, int targetValue, int minIndex, int maxIndex) {
if(orderArray==null || orderArray.length == 0) return Integer.MIN_VALUE;

int index = (minIndex + maxIndex)/2;

if( targetValue > orderArray[index] ) return binarySearch(orderArray, targetValue, index, maxIndex);
if( targetValue < orderArray[index] ) return binarySearch(orderArray, targetValue, minIndex, index);

return index;
}

ARTS_第一周挑战

Posted on 2018-11-18 | In ARTS
  1. Algorithm:每周至少做一个 leetcode 的算法题

    TwoSum题目
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public int[] twoSum(int[] nums, int target) {
Map<Integer, Integer> map = new HashMap<>();
for (int i = 0; i < nums.length; i++) {
map.put(nums[i], i);
}

int complement ;
for (int i = 0; i < nums.length; i++) {
complement = target - nums[i];
if (map.containsKey(complement) && map.get(complement) != i) {
return new int[] { i, map.get(complement) };
}
}
return null;
}
}
  1. Review:阅读并点评至少一篇英文技术文章

    自己翻译练习的Effective Java (注:翻译水平很有限,欢迎大家指正)
    Effective Java Introduction

  2. Tip:学习至少一个技术技巧

    markdown语法学习

  3. Share:分享一篇有观点和思考的技术文章

    这篇文章是带我第一次引起我看源码的文章,纪念一下
    hashMap源码

Effective_Java_Introduction

Posted on 2018-11-17 | In Effective Java

new konwledge

  • from time to time 有时
  • convey 传达,运输
  • generally 通常
  • capture 捕获,俘获
  • hold 握住 (held的过去分词)
  • held to be 被认为是
  • beneficial 有益的
  • group into 集合成
  • from cover to cover 从头至尾
  • stand on 坚持 ,依靠
  • heavy 沉重的,大量的
  • cross 交叉
  • plot n.情节,v.划分,密谋
  • through prep 通过 凭借,adj 直达的,完结的 adv 彻底,从头至尾
  • in some way 在某种程度上,在某些方面
  • where to go 去哪里
  • coverage 关键功能
  • idioms 习惯语,惯用语,方言
  • appropriate adj适当的 v 占用
  • where appropriate 在适当的地方
  • know as 称为
  • accessible 可进入的,可理解的
  • even for 即使对于
  • even adj 偶数的,平坦的,相等的,adv 甚至,即使,实际上 v 使平坦,使相等
  • most of 大部分,大多数的
  • derive 源于,起源
  • paramount 至高无上的,最重要的
  • ideally 理想地
  • characterize v 描绘…的特性,具有…的特征
  • majority 多数,成年
  • major 主要的 n 成年人
  • slavishly 奴隶般地
  • discipline n 学科 v 训练
  • for the most part 在极大程度上,多半
  • robust 健壮的,强健的
  • usually 通常,经常
  • performance 性能,执行,表现
  • approximate 近似,接近于
  • nicknames 昵称,绰号
  • readability 可读性,易读
  • boilerplate 引用,样板文件
  • deserve 应得,应受
  • mention 提到,说起
  • export 输出
  • by which 由
  • be short for 是…的简称
  • preferable 更好的
  • prefer 更喜欢,喜欢
  • coincidence 巧合,同时发生
  • union 联合,联盟

翻译_Introduction(简介)

    这本书的设计是帮助你,让你高效的使用java编程语言和它的基础库,如:java.lang , java.util 和 java.io ,包括它的子包比如 java.util.concurrent 和 java.util.function 。有时别的库也会被讨论。

    这本书由90项组成,每一项都传达一种规则。这种规则包含的实践通常被最棒的和最有经验的工程师认为是有益的。这些零散地项被集合成11个章节,每一个章节都涵盖了一种广泛的软件设计方向。这本书没有从头至尾阅读的意图,每一项都仅仅只依赖于它自己,或多或少,这些项大量地交叉,因此你可以很容易地划分出你自己的课程通过本书。

    许多新的功能被添加到这个自从这本书上个版本被发布以来。在这本书大多数的项用这些新功能在某些方面。下面这个表格向你展示了去哪里关于主要的关键功能的覆盖:

功能 项目 java版本
Lamdbas Items 42-44 java 8
Streams Items 45-48 java 8
Optionals Item 55 java 8
Default methods in interfaces Items 21 java 8
try-with-resources Items 9 java 7
@SafeVarargs Items 32 java 7
Modules Item 15 java 9

    大多数的项用用编程列子来解释。这本书的一个关键功能是,它包含代码例子来解释许多设计模式和习惯语法。在适当地地方,它们相互引用给标准引用工作在这片区域【Gramma95】

    许多项包含一个或者多个编程例子解释了一些实践应该避免。列如这些例子,称为 “antipatterns” ,被清晰地用一句注释 ”//Never do this” 来标注。在每一个列子中,这个项解释了为什么这个列子是坏的并且建议一个可供选择的方法。

    这本书不适合初学者:它假定你已经很适应java了。如果你还不是,考虑许多好的介绍的入门书之一,列如Peter Sestoft‘s Java Precisely。当Effecive Java被设计成可以理解的对于任何有这门语言的工作知识的人,它提供了丰富的思考即使对于高级工程师

    在这本书大部分规则源于一些基础原则。清晰和简洁是最重要的。一个组件的使用者应该从未被它的行为感到惊讶。组件应该尽可能的小直到没有更小的。(作为本书的使用者,术语组件参考许多可重用软件部分,从一个独立的方法到一个由多个包组成的复杂框架)。代码应该被重用而不是复制。依赖在组件之间应该保持到最小。错误应该尽可能的在它们被制造出来时被检测到,理想在编译期。

    当规则在本书中不能被100%的应用,它们将塑造最好的编程实践在大多数情况下。你不应该奴隶般地跟随这些原则,但违反这些原则仅仅偶然的情况并且有好的原因。学习编程的艺术,像大多数别的训练,由第一次学习规则然后学习什么时候打破它们。

    在极大程度上,这本书没有关于怎么执行。它是关于写程序,清晰的、正确的、可用的、健壮的,灵活的,并且是可维护的。如果你这样做了,它通常是一个相对简单关系为了得到你需要的性能(Item 67)。一些项讨论了性能的关系,并缺这些项的一部分提供了性能的数据。这些数据,被介绍用词汇“on my machine”应该被认为是接近于最好的。

    关于作者机器配置这大致为,i7-4770k 3.5Ghz ,16g内存,windows7,OpenJDK。

    当讨论Java编程语言和它的库的功能时,参考指定的版本有时是必要的。为了方便,这本书偏好用绰号给官方的发行版名字,这张表展示了映射关系在官方名字和绰号之间。(表已省略)

    这个列子被合理的完成,但是偏好易读性超过了完整。他们自由地用来自包java.util 和 java.io的类。为了编译例子,你应该添加一个或多个导入声明,或者别的引用。本书的网站
,包含了每个列子的扩展版本,你可以编译和运行它们。

    对于大部分,这本书使用技术术语作为他们定义在javaSE8【JLS】,一些术语应特别的提到。这门语言支持4种类型:interface接口(包含注解annotation),class(包含枚举enum),数组和原始数据类型。一至三被称为引用数据类型。类实例和数组是对象,原始类型的值并不是。一个类的成员由它的字段,方法,成员类,和成员接口组成。一个方法的签名由它的名字和它的形式参数类型组成;这个签名不包括方法的返回类型。

    这本书使用的一些术语不同于“The Java Language Specification”。不同于【JLS】,这本书使用inheritance作为subclassing子类的同义词。用术语inheritance替代interface接口,这本书简单的陈述了一个类实现一个接口或者一个接口继承了别的。为了描述这种访问等级,当没有什么指定的时候引用这种访问等级,这本书用传统的package-private包私有代替技术正确的包访问。

    这本书用一些技术术语,这些技术术语没有定义在【JSL】。这术语输出API,或者简单API,参考类和接口,构造,成员,和序列化形式由一个程序员访问一个类,接口,或者一个包。(术语API,这个是应用程序接口的简称,是偏好的使用为了更合适的使用术语接口以避免这门语言名字的构造)。一名程序员用api是参考api的用法。一个实现的类用一个api是一个客户端的API。

    类,接口,构造,成员,和序列化形式是集合称为api成员。一个输出的API由API成员,这些包外部可访问的成员定义了api。API成员有许多客户端可以使用并且api的作者提供了支持。并非巧合,他们仅是Javadoc工具生成的文档元素在它的默认操作模式下。宽泛的说,一个包的api有public公开的和protected受保护的成员还有每个公开的类和接口的构造方法在这个包中。

    在java9中,一个模块系统被添加进了平台。如果一个库使用模块化系统,它输出的api是所有包的输出的api的一个联合输出通过一个包模块的声明。

markdown_record

Posted on 2018-11-17 | In markdown

此处应有图片

基础规则学习

# (锚点) 写标题用
  • 注意:# 需要空格再接标题,不生效问题

> (引用) 只需要在整个段落第一行前面加上就行。
    1. 可以嵌套
    2. 结束的时候换行就行了(注:空一行)

一级引用

二级引用


-/number. (列表) 标记后面要接一个字符的空格。
  • 一个点
  • 在列表内放进引用,用>(需要缩紧)

    unit test

  1. 这个是有序列表
  2. 数字

1
2
	
code body
1
2
3
4
5
6
public void className{
@Test
public void sayHello(){
printf("Hello")
}
}

*斜体*
_斜体_
(注:没生效,需要删除前面的一个占位符,就生效了)
**加粗**
__斜体__

加粗就是这样

斜体没看出来啊?


[]() 方括号显示说明,圆括号内显示网址    

github连接


![Alt text](/path/to/img.jpg) 路径我是放在source/images中

##markdown支持html语法

我个人还是使用html标签比较习惯,可以直接修改样式

  • 图片标签 image

  • 居中标签 center (也可以使用样式居中)

第一步总是伟大的(日计划)

Posted on 2018-11-17 | In 日计划

##首先就是创作一下应该有的markdown的文章,尝试一下发布,以及今天尝试的任务

  1. hexo 基本操作,基本能搞定(0.5h)
  2. markdown语法 排版 了解,需要再去查就好,通读一遍基本语法就ok(0.5h)
    • 做一篇关于markdown的blog(o.5h,查到的语法就可以往里面写)
  3. 先把csapp文章,先看看。第一遍通读,xmind还是比较好用的,后面再次进行考虑就好(3h)
  4. 买菜做饭活动一下,这个更加关键(2h)
    1. 翻译英文,effecive java一章(2h)
1…34
luowen

luowen

Blogging is a little fun

37 posts
16 categories
16 tags
© 2019 luowen
Powered by Hexo
Theme - NexT.Mist
访问人数 人 总访问量 次