- SwiftUI【1】-Swift
cena1001
杂文swiftswiftuixcode
SwiftUI【1】-Swift学习SwiftUI之前,简单了解一下Swift。swift语言是苹果2014年6月3日正式推出一门新的的语言。swift语言主要能够开发ios和mac相关的app.执行效率比c,c++,object_c开发的效率更高,并且编写更简洁。官方定位在苹果的官网上是这样描述和定位的:Swift,一种强大的开源编程语言,让大家都能开发出众的App。Swift是一种强劲而直观的
- IOC原理
binaryTree
探究SpringIOC控制反转、DI依赖注入IoC控制反转思想可以用一句话来描述:依赖即地狱------IoC控制反转思想是为了解决对象与对象之间、依赖地狱的问题解释下这种依赖地狱,Whatisit?假设N个对象,Object_A需调用Object_B,Object_B又需调用Object_C,而Object_C又必需调用Object_D...Object_N又必需调用Object_A,一层层套娃
- 在swift 中引入AFNetworking时遇到的问题
wdwlbsm1
APPLE
刚开始学习swift,什么都不明白,希望在项目中引用AFNworking,访问网络服务,不知道如何使用,先是直接把文件copy到项目中完全没有用,找了一些swift调用C和object_c的例子,试着是要加一个桥接文件,可以成功的调用,但是没有正常的提示符。在群中问了一下,有人提示cocoapods,好搜索了一下这个东本,发现了:CocoaPods安装和使用教程http://code4app.co
- 2020-08-20
_luckysk
整理MRC和ARC区别MRC:(ManualReferenceCounting)也就是非ARC,在Xcode4之前,Object_C的内存管理就需要开发人员手动维护。ARC:(AutomaticReferenceCounting)也就是ARC,翻译成中文就是:【自动引用计数】,不需要开发人员手动维护,系统会在合适的时候调用内存管理方法。内存区五大内存区域分别为栈区:创建临时变量时由编译器自动分配,
- ldap3 官方文档学习之增删改查操作
Wonz
前言公司部门培训用到ldap3,布置了个作业,于是开始看官方文档学习中。我是直接从LDAPOperations部分开始看的。主要就是官方文档提供了增删改查的接口,需要看懂函数和参数,然后就会用了。增加操作官方add函数defadd(self,dn,object_class=None,attributes=None,controls=None)逐个参数解释:dn:标识要添加的目标名字object_c
- ios笔记
约定_6976
1、程序的头文件和源文件的扩展名分别为.h和.m;2、注释:单行(//)和多行(/*…*/);3、Object_C中的nil相当于NULL。4、Object_C中的YES和NO相当于true和false。5、#import相当于#include,导入头文件也有两种查找方式和"…",但是#import可自动防止同一个文件被导入多次。6、Object_C中的所有类都必须继承自NSObject。7、Ob
- Object_C 九宫格按钮排列
隔壁的王叔叔来了
001.png002.png以上是全部代码。。。截图我是直接把九宫格按钮封装在一个类里,外部至于需要调用该类就可以实现九宫格布局。因为是1.0版本,所以还有很多没有考虑到。欢迎大家批评指正,共同进步。
- SDK(IAP支付+极光认证)
Code_Narrator
研发请注意由于接入了极光认证sdk请仔细配置极光后台的一键登陆功能写在前面使用本公司sdk,您的应用可以借助sdk完成用户注册与用户信息管理,本SDK为Object_C语言编写,为了方便审核,目前仅支持手动部署,关于SDK的具体使用方法,请仔细阅读下面的文档。背景开发环境确保您的开发及部署环境符合以下标准:开发工具:推荐Xcode11及以上版本部署目标:iOS9.0及以上版本SDK版本:官网最新版
- 经验分享:C++程序员从小白到大神的成长之路
淡沫浅然
程序人生c++数据结构编程语言程序人生经验分享
序言C++是一门略微比其他语言难一点的语言,它更偏向于底层,而且它包含的思想比较多,如果你只学习语言本身,不关注它所涉及的思想,将会在未来的实际应用中举步维艰,所以学习该门语言需要你付出双倍的精力来学习它的附属知识。学习编程语言后你要做哪些编程语言本身的思想都是贯通的,无论你学习C/C++,JAVA还是PHP,Object_C,Python。他们都是一种思想,当你学会其中一门去学其他的就会变得相对
- iOS开发之第三方登录QQ -- 史上最全最新第三方登录QQ方式实现
wakice
iOS开发之第三方登录QQ--史上最全最新第三方登录QQ方式实现标签:iOS第三方登录QQ登录增量授权第三方登录QQ详解2016-06-1718:067406人阅读评论(0)收藏举报本文章已收录于:iOS知识库分类:Object_c(53)IOS高级知识总结(100)版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]项目地址:https://github.com/zhonggao
- 【读书笔记一】Zen and the Art of Objective_C Craftsmanship
weixin_30670965
《ZenandtheArtofObjective_CCraftsmanship》是一本关于Object_C优化的书,有点类似《EffectiveObjective-C2.0编写高质量iOS与OSX代码的52个有效方法》,但是篇幅比后者精简,全本只有98页,花几个小时就能看完的小册子。虽体积小,但是内容却很实用,以下就是我的读书笔记。1、条件语句都使用花括号括起来,即使只有一句,因为这样易读也易维护
- ARC和MRC
光明程辉
笔者开始自学iOS的时候是MRC的,不久便接触了ARC。下面介绍一下我所理解的MRC和ARC:ARC和MRC的区别:MRC:(ManualReferenceCounting)也就是非ARC,在Xcode4之前,Object_C的内存管理就需要开发人员手动维护。ARC:(AutomaticReferenceCounting)也就是ARC,翻译成中文就是:【自动引用计数】,不需要开发人员手动维护,系统
- Swift 入门
在伦敦涂鸦
swift是一门什么语言了?swift语言是苹果2014年6月3日正式推出一门新的的语言。swift语言主要能够开发ios和mac相关的app.执行效率比c,c++,object_c开发的效率更高,并且编写更简洁。swift语法基本的风格和c#javascript的语法很像。Swift采用安全的编程模式,增加了现代功能,使编程变得容易,更灵活,更有趣,Swift的重新设计,依靠成熟和备受喜爱的Co
- ios内存管理记录
timeQuick
ios的内存管理技术是自动引用计数也就是(AutomaticReferenceCounting,自动引用计数,简称ARC)。在object_c内存管理中每个对象都有自己的引用计数器,创建一个对象,应用计数+1,如果想让对象继续存活,就递增它的应用计数,如果不再使用它,就递减它的应用计数。如果对象不再被使用之后,引用计数就记为0,系统就会销毁这个对象。引用计数有着及时的回收垃圾,相对于其它的内存管理
- OC高级编程iOS内存管理-第1章-自动引用计数
凡几多
自动引用计数什么是自动引用计数内存管理/引用计数ARC规则ARC的实现1.1什么是自动引用计数ARC和MRC的区别:MRC:(ManualReferenceCounting)也就是非ARC,在Xcode4之前,Object_C的内存管理就需要开发人员手动维护。ARC:(AutomaticReferenceCounting)也就是ARC,翻译成中文就是:【自动引用计数】,不需要开发人员手动维护,系统
- Xcode 常见问题-开发基础细节
lzt橘子
前言对于踏进IOS大门的新手开发人员来说,初始的开发阶段还是有蛮多的坑坑洼洼需要注意的,对比Android开发,就如同java之于object_c,至少目前来说,我认为java的语言和Android的四大组件比IOS的NSObject,UIView更傻瓜易懂,类似的便是kotlin和swift,swift相信不少人会被不同版本的swift搞懵圈过,或许不该想当然的认为swift的版本升级和java
- 第一章 程序整体语法结构
一个人的思考
第一章程序整体语法结构程序的头文件和源文件的扩展名分别为.h和.m。注释语法和C一样。Object_C中的nil相当于NULL。Object_C中的YES和NO相当于true和false。这里再讲解一下YES和NO:Object-c提供了BOOL类型,但这个BOOL类型和C++里的并不一样:在C++里一切非0值的东西都为true,而为0值的为false。但是Object-c里1为true并被宏定义
- IOS 开发 OC(Object_C)与前端页面JS(JavaScript)交互整理(一)
HiroGuo
开发纪录
最近一直有朋友问关于OC与JS交互的使用以及细节等等。由于公司开发使用的就是这种前端Html后段OC的开发模式,Ipad、Iphone、MAcOS、Window不同的设备上界面的统一管理,不得不说,方便啦后端开发人员。UI什么的界面什么的鬼,前端负责搞定。但是,在选择这种开发模式的时候,首先要明确一点:是交互型的APP还是展示型的APP,如果是展示型的恭喜你,选择这种开发模式会非常轻松。如果是交互
- Swift_可选类型(Optionals)
Sponge_CMZ
swiftOptionalsswift构造过程
说明:文中提到的”构造器”和Object_C中的”初始化”类似.博文中的代码仅为讲解知识,没有成型的项目Demo.资料链接Swift2.0(中文版)举例:(构造过程–默认构造器)代表前面的文字出自”构造过程”这章中的”默认构造器”小节.建议看一看Swift2.0中的(基础部分–可选,nil,if语句以及强制解析,可选绑定,隐私解析可选类型)和(构造过程–存储属性的初始赋值,默认构造器,类的继承和构
- ios捕获异常
ios
iphone object_c 也支持异常捕获,用过没有呀。 在处理UITableView, MKMapView等,你可以加一些异常捕获,因为显示数据常常出错。
下面是示例代码
@try
{
Statements
}
@catch (NSException *ex) {
UIAlertView *alert = [[UIAlertView all
- object_C 关联一个对象
wong_girl
对象的关联
关联是指把两个对象相互关联起来,使得其中的一个对象作为另外一个对象的一部分。 关联特性只有在MacOSXV10.6以及以后的版本上才是可用的。在类的定义之外为类增加额外的存储空间 使用关联,我们可以不用修改类的定义而为其对象增加存储空间。这在我们无法访问到类的源码的时候或者是考虑到二进制兼容性的时候是非常有用。 关联是基于关键字的,因此,我们可以为任何对象增加任意多的关联,每个都使用不同
- [Objective-C] 2014.11.28
htx931005
1.1.1内存的创建与释放 idtestObject=[[ClassNamealloc]init]; alloc是Objecive-C中常用来申请内存块的方式。此时,对于对象"testObject"来说,它的引用计数就是1了,原因是它调用了alloc来创建了一块属于自己的内存,这样对象的引用计数+1,另外,Object_C中的另两个关键字retain和copy也会将对象的引用计数+1
- ios(一):object_c 基本语法
砺雪凝霜
object
大部分有一点其他平台开发基础的初学者看到XCode,第一感想是磨拳擦掌,看到InterfaceBuilder之后,第一感想是跃跃欲试,而看到Objective-C的语法,第一感想就变成就望而却步了。好吧,我是在说我自己。 如果你和我一样,对苹果相关的开发:MacOSX或是iPhone有兴趣,但是第一时间看到Objective-C就会头疼并伴有发烧症状的话,疗效比较好的快速治疗方法是阅读本文。大概
- object_C正则表达式
HillYoung
//网上摘抄的代码段//-(BOOL)isValidateEmail:(NSString*)email{// NSString*emailRegex=@"[A-Z0-9a-z._%+-]+@[A-Za-z0-9._%]+\\.[A-Za-z]{2,4}";// NSPredicate*emailTest=[NSPredicatepredicateWithFormat:@"SELFMATCHES
- Object_c使用技巧
mmdev
object
1.判断对像是否实现了某方法。
//.h #import <Foundation/Foundation.h> @interface Tester : NSObject { } -(void) test:(NSString*) msg; -(void) notImp; @end //.m #import "Tester.h" @implementation Test
- object_c得到SHA1值
mmdev
object
加密的时候常常用到sha1值,iphone中有个很简单的方法得到该值。
#import <CommonCrypto/CommonDigest.h> @implementation SHA1 +(NSString*) digest:(NSString*)input { const char *cstr = [input cStringUsingEncoding:NSUTF8Stri
- object_c得到SHA1值
favormm
加密的时候常常用到sha1值,iphone中有个很简单的方法得到该值。 #import@implementationSHA1+(NSString*)digest:(NSString*)input{constchar*cstr=[inputcStringUsingEncoding:NSUTF8StringEncoding];NSData*data=[NSDatadataWithBytes:cstrl
- object_c字符串比较之:版本号
favormm
cobject扩展
在开发当中,经常会比较软件的版本号,比如1.0.0.1与1.0.1。方法有很多,你可以一个一个解析出来,比较数值。其实有一种NSString的内置比较方法,只不过带了比较选择项,多一个参数而已。下面的源码扩展了系统的NSString功能,术语叫:category。 @implementationNSString(Version)-(BOOL)isOlderVersionThan:(NSString
- object_c字符串比较之:版本号
mmdev
object
在开发当中,经常会比较软件的版本号,比如1.0.0.1与1.0.1。方法有很多,你可以一个一个解析出来,比较数值。其实有一种NSString的内置比较方法,只不过带了比较选择项,多一个参数而已。下面的源码扩展了系统的NSString功能,术语叫:category。
@implementation NSString(Version) -(BOOL) isOlderVersionThan:(NS
- mysql主从数据同步
林鹤霄
mysql主从数据同步
配置mysql5.5主从服务器(转)
教程开始:一、安装MySQL
说明:在两台MySQL服务器192.168.21.169和192.168.21.168上分别进行如下操作,安装MySQL 5.5.22
二、配置MySQL主服务器(192.168.21.169)mysql -uroot -p &nb
- oracle学习笔记
caoyong
oracle
1、ORACLE的安装
a>、ORACLE的版本
8i,9i : i是internet
10g,11g : grid (网格)
12c : cloud (云计算)
b>、10g不支持win7
&
- 数据库,SQL零基础入门
天子之骄
sql数据库入门基本术语
数据库,SQL零基础入门
做网站肯定离不开数据库,本人之前没怎么具体接触SQL,这几天起早贪黑得各种入门,恶补脑洞。一些具体的知识点,可以让小白不再迷茫的术语,拿来与大家分享。
数据库,永久数据的一个或多个大型结构化集合,通常与更新和查询数据的软件相关
- pom.xml
一炮送你回车库
pom.xml
1、一级元素dependencies是可以被子项目继承的
2、一级元素dependencyManagement是定义该项目群里jar包版本号的,通常和一级元素properties一起使用,既然有继承,也肯定有一级元素modules来定义子元素
3、父项目里的一级元素<modules>
<module>lcas-admin-war</module>
<
- sql查地区省市县
3213213333332132
sqlmysql
-- db_yhm_city
SELECT * FROM db_yhm_city WHERE class_parent_id = 1 -- 海南 class_id = 9 港、奥、台 class_id = 33、34、35
SELECT * FROM db_yhm_city WHERE class_parent_id =169
SELECT d1.cla
- 关于监听器那些让人头疼的事
宝剑锋梅花香
画图板监听器鼠标监听器
本人初学JAVA,对于界面开发我只能说有点蛋疼,用JAVA来做界面的话确实需要一定的耐心(不使用插件,就算使用插件的话也没好多少)既然Java提供了界面开发,老师又要求做,只能硬着头皮上啦。但是监听器还真是个难懂的地方,我是上了几次课才略微搞懂了些。
- JAVA的遍历MAP
darkranger
map
Java Map遍历方式的选择
1. 阐述
对于Java中Map的遍历方式,很多文章都推荐使用entrySet,认为其比keySet的效率高很多。理由是:entrySet方法一次拿到所有key和value的集合;而keySet拿到的只是key的集合,针对每个key,都要去Map中额外查找一次value,从而降低了总体效率。那么实际情况如何呢?
为了解遍历性能的真实差距,包括在遍历ke
- POJ 2312 Battle City 优先多列+bfs
aijuans
搜索
来源:http://poj.org/problem?id=2312
题意:题目背景就是小时候玩的坦克大战,求从起点到终点最少需要多少步。已知S和R是不能走得,E是空的,可以走,B是砖,只有打掉后才可以通过。
思路:很容易看出来这是一道广搜的题目,但是因为走E和走B所需要的时间不一样,因此不能用普通的队列存点。因为对于走B来说,要先打掉砖才能通过,所以我们可以理解为走B需要两步,而走E是指需要1
- Hibernate与Jpa的关系,终于弄懂
avords
javaHibernate数据库jpa
我知道Jpa是一种规范,而Hibernate是它的一种实现。除了Hibernate,还有EclipseLink(曾经的toplink),OpenJPA等可供选择,所以使用Jpa的一个好处是,可以更换实现而不必改动太多代码。
在play中定义Model时,使用的是jpa的annotations,比如javax.persistence.Entity, Table, Column, OneToMany
- 酸爽的console.log
bee1314
console
在前端的开发中,console.log那是开发必备啊,简直直观。通过写小函数,组合大功能。更容易测试。但是在打版本时,就要删除console.log,打完版本进入开发状态又要添加,真不够爽。重复劳动太多。所以可以做些简单地封装,方便开发和上线。
/**
* log.js hufeng
* The safe wrapper for `console.xxx` functions
*
- 哈佛教授:穷人和过于忙碌的人有一个共同思维特质
bijian1013
时间管理励志人生穷人过于忙碌
一个跨学科团队今年完成了一项对资源稀缺状况下人的思维方式的研究,结论是:穷人和过于忙碌的人有一个共同思维特质,即注意力被稀缺资源过分占据,引起认知和判断力的全面下降。这项研究是心理学、行为经济学和政策研究学者协作的典范。
这个研究源于穆来纳森对自己拖延症的憎恨。他7岁从印度移民美国,很快就如鱼得水,哈佛毕业
- other operate
征客丶
OSosx
一、Mac Finder 设置排序方式,预览栏 在显示-》查看显示选项中
二、有时预览显示时,卡死在那,有可能是一些临时文件夹被删除了,如:/private/tmp[有待验证]
--------------------------------------------------------------------
若有其他凝问或文中有错误,请及时向我指出,
我好及时改正,同时也让我们一
- 【Scala五】分析Spark源代码总结的Scala语法三
bit1129
scala
1. If语句作为表达式
val properties = if (jobIdToActiveJob.contains(jobId)) {
jobIdToActiveJob(stage.jobId).properties
} else {
// this stage will be assigned to "default" po
- ZooKeeper 入门
BlueSkator
中间件zk
ZooKeeper是一个高可用的分布式数据管理与系统协调框架。基于对Paxos算法的实现,使该框架保证了分布式环境中数据的强一致性,也正是基于这样的特性,使得ZooKeeper解决很多分布式问题。网上对ZK的应用场景也有不少介绍,本文将结合作者身边的项目例子,系统地对ZK的应用场景进行一个分门归类的介绍。
值得注意的是,ZK并非天生就是为这些应用场景设计的,都是后来众多开发者根据其框架的特性,利
- MySQL取得当前时间的函数是什么 格式化日期的函数是什么
BreakingBad
mysqlDate
取得当前时间用 now() 就行。
在数据库中格式化时间 用DATE_FORMA T(date, format) .
根据格式串format 格式化日期或日期和时间值date,返回结果串。
可用DATE_FORMAT( ) 来格式化DATE 或DATETIME 值,以便得到所希望的格式。根据format字符串格式化date值:
%S, %s 两位数字形式的秒( 00,01,
- 读《研磨设计模式》-代码笔记-组合模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
abstract class Component {
public abstract void printStruct(Str
- 4_JAVA+Oracle面试题(有答案)
chenke
oracle
基础测试题
卷面上不能出现任何的涂写文字,所有的答案要求写在答题纸上,考卷不得带走。
选择题
1、 What will happen when you attempt to compile and run the following code? (3)
public class Static {
static {
int x = 5; // 在static内有效
}
st
- 新一代工作流系统设计目标
comsci
工作算法脚本
用户只需要给工作流系统制定若干个需求,流程系统根据需求,并结合事先输入的组织机构和权限结构,调用若干算法,在流程展示版面上面显示出系统自动生成的流程图,然后由用户根据实际情况对该流程图进行微调,直到满意为止,流程在运行过程中,系统和用户可以根据情况对流程进行实时的调整,包括拓扑结构的调整,权限的调整,内置脚本的调整。。。。。
在这个设计中,最难的地方是系统根据什么来生成流
- oracle 行链接与行迁移
daizj
oracle行迁移
表里的一行对于一个数据块太大的情况有二种(一行在一个数据块里放不下)
第一种情况:
INSERT的时候,INSERT时候行的大小就超一个块的大小。Oracle把这行的数据存储在一连串的数据块里(Oracle Stores the data for the row in a chain of data blocks),这种情况称为行链接(Row Chain),一般不可避免(除非使用更大的数据
- [JShop]开源电子商务系统jshop的系统缓存实现
dinguangx
jshop电子商务
前言
jeeshop中通过SystemManager管理了大量的缓存数据,来提升系统的性能,但这些缓存数据全部都是存放于内存中的,无法满足特定场景的数据更新(如集群环境)。JShop对jeeshop的缓存机制进行了扩展,提供CacheProvider来辅助SystemManager管理这些缓存数据,通过CacheProvider,可以把缓存存放在内存,ehcache,redis,memcache
- 初三全学年难记忆单词
dcj3sjt126com
englishword
several 儿子;若干
shelf 架子
knowledge 知识;学问
librarian 图书管理员
abroad 到国外,在国外
surf 冲浪
wave 浪;波浪
twice 两次;两倍
describe 描写;叙述
especially 特别;尤其
attract 吸引
prize 奖品;奖赏
competition 比赛;竞争
event 大事;事件
O
- sphinx实践
dcj3sjt126com
sphinx
安装参考地址:http://briansnelson.com/How_to_install_Sphinx_on_Centos_Server
yum install sphinx
如果失败的话使用下面的方式安装
wget http://sphinxsearch.com/files/sphinx-2.2.9-1.rhel6.x86_64.rpm
yum loca
- JPA之JPQL(三)
frank1234
ormjpaJPQL
1 什么是JPQL
JPQL是Java Persistence Query Language的简称,可以看成是JPA中的HQL, JPQL支持各种复杂查询。
2 检索单个对象
@Test
public void querySingleObject1() {
Query query = em.createQuery("sele
- Remove Duplicates from Sorted Array II
hcx2013
remove
Follow up for "Remove Duplicates":What if duplicates are allowed at most twice?
For example,Given sorted array nums = [1,1,1,2,2,3],
Your function should return length
- Spring4新特性——Groovy Bean定义DSL
jinnianshilongnian
spring 4
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- CentOS安装Mysql5.5
liuxingguome
centos
CentOS下以RPM方式安装MySQL5.5
首先卸载系统自带Mysql:
yum remove mysql mysql-server mysql-libs compat-mysql51
rm -rf /var/lib/mysql
rm /etc/my.cnf
查看是否还有mysql软件:
rpm -qa|grep mysql
去http://dev.mysql.c
- 第14章 工具函数(下)
onestopweb
函数
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- POJ 1050
SaraWon
二维数组子矩阵最大和
POJ ACM第1050题的详细描述,请参照
http://acm.pku.edu.cn/JudgeOnline/problem?id=1050
题目意思:
给定包含有正负整型的二维数组,找出所有子矩阵的和的最大值。
如二维数组
0 -2 -7 0
9 2 -6 2
-4 1 -4 1
-1 8 0 -2
中和最大的子矩阵是
9 2
-4 1
-1 8
且最大和是15
- [5]设计模式——单例模式
tsface
java单例设计模式虚拟机
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点
安全的单例模式:
/*
* @(#)Singleton.java 2014-8-1
*
* Copyright 2014 XXXX, Inc. All rights reserved.
*/
package com.fiberhome.singleton;
- Java8全新打造,英语学习supertool
yangshangchuan
javasuperword闭包java8函数式编程
superword是一个Java实现的英文单词分析软件,主要研究英语单词音近形似转化规律、前缀后缀规律、词之间的相似性规律等等。Clean code、Fluent style、Java8 feature: Lambdas, Streams and Functional-style Programming。
升学考试、工作求职、充电提高,都少不了英语的身影,英语对我们来说实在太重要