昨天写的关于C# ref 和 out关键字的文章每发上来。今天转一篇关于管理的文章过来...

管理学精髓与责任
本文探讨了管理学作为一门综合学科的重要性,特别是彼得·德鲁克对于管理实践的理解。德鲁克强调管理的本质在于承担责任与取得成果,而非追求权力。文章还提到了管理者和员工的责任,并介绍了《管理:任务、责任、实践》一书中的核心思想。

管理是一门综合的学科

德鲁克的思想:
作为一种实践和一个思考与研究的领域,管理已经有了很长的历史,其根源几乎可以追溯到200年以前。但管理作为一个学科,其开创的年代应是1954年,彼得•德鲁克所著《管理实践》的问世,标志着管理学的诞生。彼得•德鲁克创建了管理这门学科,并精辟地阐述了管理的本质:“管理是一种实践,其本质不在于‘知’而在于‘行’;其验证不在于逻辑,而在于成果;其唯一权威就是成就。” 
  德鲁克对“责任”、管理人员的“责任”、员工的“责任”以及企业的“责任”谈得很多。1973年,德鲁克将自己几十年的知识经验与思考浓缩到一本书中。这本共达839页的浩瀚巨著以其简洁而浓缩的书名道出了管理学的真谛——《管理:任务、责任、实践》。据此,我们可以把管理诠释为:管理任务、承担责任、勇于实践。令人惊奇的是,当我在这本书中搜索“责任”这一词条时,发现该书索引中有多达36处谈到“责任”,而竟无一处谈到“权力”。
  “权力和职权是两回事。管理当局并没有权力,而只有责任。它需要而且必须有职权来完成其责任——但除此之外,决不能再多要一点。”在德鲁克看来,管理当局只有在它进行工作时才有职权(authority),而并没有什么所谓的“权力”(power)。
  德鲁克反复强调,认真负责的员工确实会对经理人提出很高的要求,要求他们真正能胜任工作,要求他们认真地对待自己的工作,要求他们对自己的任务和成绩负起责任来。
  责任是一个严厉的主人。如果只对别人提出要求而并不对自己提出要求,那是没有用的,而且也是不负责任的。如果员工不能肯定自己的公司是认真的、负责的、有能力的,他们就不会为自己的工作、团队和所在单位的事务承担起责任来。
  要使员工承担起责任和有所成就,必须由实现工作目标的人员同其上级一起为每一项工作制定目标。此外,确保自己的目标与整个团体的目标一致,也是所有成员的责任。必须使工作富有活力,以便员工能通过工作使自己有所成就。而员工则需要有他们承担责任而引起的要求、纪律和激励。因此,进入德鲁克管理世界的捷径就是从认识管理人员的责任、员工的责任和企业的责任开始。

后面是我自己对07年的一些想法
2006就这样不知所然的过去了,07年的到来使我想得给自己安排一些计划了!
2007年我觉得应该是我必须认真积累经验的一年,为2008年做好充分的准备。本来想在07年自己做事,但是通过这些天的经历,我觉得自己还需要做更多的积累。毫无资本的盲干是注定会失败的。
07的大方向我希望自己在C#、C++方面都有所长劲,C#对我来说应该好说一点,毕竟自己有 java的基础,对C#来说应该是有一些帮助的。关键在C++,需要自己多付出努力才行的。
我总的思想如果让我做C/S产品的话,我会选用C#(客户端) + C++(服务器端),然后C/S之间使用ICE通讯。所以我需要加强对这两种语言的使用能力。C#的快速开发是让我很佩服的,C++在效率方面也是让我很佩服得,我觉得结合这两者在一次应该是一种不错的组合。
技术是07年的主题,自身素质的提高也是07年的一个重任。
在当今的社会中立足,需要的是对自己的高度信任和强势心理,不要惧怕任何东西。犹豫不决带来的后果就是失败。我希望自己能在交流和沟通中成长。

<think>好的,用户让我帮忙一篇关于C#refout关键字的博文,要求通俗易懂。首先,我需要明确用户的需求。他们可能是一个刚学C#的开发者,或者是对这两个关键字理解不够深入,想要更清晰的解释。用户希望以博文的形式呈现,所以结构要清晰,例子要生动,避免太技术化的术语。 接下来,我得回忆一下refout的基本区别。两者都用于参数传递,但ref要求变量必须先初始化,而out不需要,但在方法内部必须赋值。这时候需要想,如何用简单的例子说明这一点。比如,用交换值的例子说明ref,而用返回多个值的例子说明out。 然后,要考虑常见的误区。比如,ref参数必须在传入前初始化,而out必须在方法内赋值。用户可能会混淆这两点,所以需要特别强调。此外,是否需要提到它们在IL层面的实现?可能对于初学者来说,这个太深入了,但可以稍微提一下它们都是按引用传递,避免误解。 还要考虑实际应用场景。比如,ref适合需要修改传入变量的情况,而out适合需要返回多个值的情况,比如TryParse模式。这时候需要举一些实际开发中的例子,比如int.TryParse,这样读者更容易理解。 然后,结构安排。博文通常需要一个吸引人的开头,比如用疑问句引起兴趣。接着分点讲解,比较两者的异同,给出示例代码,并解释输出结果。最后总结使用场景注意事项,可能再加上一些幽默的提醒,比如“不要滥用”。 还要检查是否有遗漏的点。比如,refout在方法重载中的处理,是否属于高级话题?可能用户不需要,但可以简单提及。另外,是否需要提到in关键字?可能暂时不需要,以免混淆主题。 最后,确保语言口语化,避免枯燥。比如用“咱们”、“老司机”这样的词汇,让读者觉得亲切。同时,代码示例要简洁,输出结果明确,方便读者自己测试。 现在,把这些思考整合成一篇结构清晰、例子生动、语言轻松的博文。确保每个部分都解决一个疑问,逐步深入,帮助读者彻底理解refout的用法区别。《</think>C#老司机带你飙车:refout到底怎么用才不翻车?》 大家好!今天咱们来聊聊C#里两个让人又爱又恨的关键字——refout。很多新手看到它们就头大,但其实只要掌握核心要点,保证你开上秋名山都不带漂移的! --- ### 一、先看现场:值类型参数的"影分身之术" ```csharp void 普通方法(int x) { x = 100; } int num = 10; 普通方法(num); Console.WriteLine(num); // 输出10,原值纹丝不动! ``` 这里发生了什么?参数传递时创建了副本,方法内部修改的只是影分身! --- ### 二、ref登场:真正的"本体改造" ```csharp void Ref方法(ref int x) { x = 100; // 直接修改本体 } int num = 10; Ref方法(ref num); Console.WriteLine(num); // 输出100,本体被改造! ``` **ref使用三原则**: 1. 调用前必须初始化(不初始化会报错) 2. 方法内外都要带ref关键字 3. 适合需要双向传递的场景 --- ### 三、out现身:快递小哥的"使命必达" ```csharp void Out方法(out int x) { x = 200; // 必须在这里赋值! } Out方法(out int num); Console.WriteLine(num); // 输出200 ``` **out三大铁律**: 1. 调用前不用初始化(初始化了也白搭) 2. 方法内部必须赋值 3. 适合需要返回多个值的场景 --- ### 四、ref vs out 世纪对决 | 特性 | ref | out | |--------|----------------------| | 初始化要求 | 必须 | 不需要 | | 方法内赋值 | 可改可不改 | 必须赋值 | | 语义 | 输入输出 | 纯输出 | | 常见场景 | 修改现有变量 | 返回多个结果 | --- ### 五、真实开发中的骚操作 1. **TryParse模式**(经典out用法): ```csharp if(int.TryParse("123", out var result)) { // 安全使用result } ``` 2. **大结构体优化**(ref高级用法): ```csharp void 处理大结构(ref BigStruct data) { // 避免值类型复制开销 } ``` 3. **Swapper工具**(ref炫技): ```csharp void 交换(ref int a, ref int b) { (a, b) = (b, a); } ``` --- ### 六、老司机的忠告 1. 能不用就不用(优先考虑返回值) 2.out时代替多返回值更优雅 3. 异步方法中禁止使用 4. 属性不能作为参数传递(编译直接报错) 5. 重载方法时refout算不同签名 --- ### 七、终极灵魂拷问 Q:ref参数用引用类型会怎样? A:那你就获得了"套娃引用"——既能修改引用本身,也能修改对象内容! --- 看完这篇还敢说不会用refout?赶紧打开VS试试,保准你出比藤原拓海还骚的代码!下次见啦,记得开车要系安全带,代码要单元测试哦~ 🚗💨
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值