1. Abstraction
2. Encapsulation
3. Inheritance
4. Polymorphism
Run Code Online (Sandbox Code Playgroud)
如何最好地解释这些概念,例如,在采访中?
我找不到它的引用,但我记得读过在析构函数或IDisposable的Dispose()方法中调用虚拟(多态)方法不是一个好主意.
这是真的,如果是这样,有人可以解释为什么吗?
我刚刚开始学习HTML/CSS,我一直在努力教自己健全的网络编程实践.我对XML很熟悉,所以用XHTML编写网页就足够直观了,看起来似乎是个不错的事情.不过,我一直在阅读文章喜欢这个 ,现在我是矛盾的.
我对HTML和XHTML编码的担忧源于以下几点:
这些是我目前可以提出的唯一基本示例,但我希望它们至少表明我在HTML和XHTML之间的分歧.所以这是我的实际问题:当我编写一个应该是HTML(带有HTML DTD)的网页时,是否可以投入XHTML代码(当我认为它恰当地澄清了某些内容时)?我相信网站看起来会一样,但如果人们看看我的来源,他们会认为我是一个非常不专业的编码器吗?
另外,我一直在盲目地浏览谷歌关于声音网络编程实践的教程和指南,我想知道你们是否有任何建议/资源与我分享.我真的想确保我正在学习如何以正确的方式做到这一点.我真的很感激.
谢谢阅读!
编辑:哇,这么快的反应; 你们真棒!所以我理解,当谈到这类东西时,网络浏览器会非常宽松.我的问题是一个虚荣的问题,以及其他专业人士如何编写一种XHTML和HTML的混合体.严格遵守代码的方式去?老实说,我只是不想看起来像个白痴,哈哈.
我正在寻找在模型 - 视图 - 控制器风格中使用WPF和NHibernate的模式和原则.
希望这不是重复.
在此之前,我知道ArrayList不是最好的选择,但这只是好奇心.
简单地说,我想知道ArrayList的实现.我查看并想通了它使用数组存储.
对于数组,当你有:
int [] arr;
Run Code Online (Sandbox Code Playgroud)
arr指向数组的第一个元素,因为它被输入为整数,编译器知道跳转的位置:
arr[2] => arr value + 2 * typeof(int) = address of arr[2]
Run Code Online (Sandbox Code Playgroud)
现在,由于ArrayList是无类型的,我想知道编译器如何能够找出下一个项目的位置.我猜想有一个开销告诉数据是什么,以便编译器可以执行指针算术.
因此,ArrayList应该比任何其他类型的集合慢,因为它不能只是跳转到数据,因为它需要知道之前的内容.这与LinkedList非常相似.
我有一个类用我的WCF服务处理我的应用程序中的所有交互,似乎MSDN说使用With)_语句与WCF是坏的 - 我可以看到为什么这是坏的并同意它(http:/ /msdn.microsoft.com/en-us/library/aa355056.aspx)
我的问题是,他们建议的实现方法将意味着我有10个方法[作为我的服务中的10个公共方法]将具有相同的结构代码,这当然不遵循DRY主体 - 代码看起来类似于以下:
try
{
results = _client.MethodCall(input parameteres);
_client.Close();
}
catch (CommunicationException)
{
if (_client != null && _client.State != CommunicationState.Closed)
{
_client.Abort();
}
}
catch (TimeoutException)
{
if (_client != null && _client.State != CommunicationState.Closed)
{
_client.Abort();
}
}
catch (Exception ex)
{
if (_client != null && _client.State != CommunicationState.Closed)
{
_client.Abort();
}
throw;
}
Run Code Online (Sandbox Code Playgroud)
这还没有任何日志记录,但当然我开始记录它时,我将不得不在几乎10个不同的地方添加日志记录工作
有没有人有任何关于我如何在重用代码方面更有资源的提示
谢谢
保罗