小编Al *_*l C的帖子

什么是Windows句柄?

在Windows中讨论资源时,什么是"句柄"?他们是如何工作的?

windows handle

148
推荐指数
7
解决办法
12万
查看次数

当代码变得更复杂时,有什么好的策略来修复错误?

我"只是"一个业余爱好者程序员,但我发现随着我的程序变得越来越长,bug越来越烦人 - 而且更难跟踪.就在所有事情似乎都顺利进行的时候,会出现一些新的问题,似乎是自发的.我可能需要很长时间才能找出导致问题的原因.其他时候我会添加一行代码,它会破坏另一个单元中的某些东西.如果我认为一切运转良好,这会让人感到沮丧.

这对每个人来说都是常见的,还是更像新手呢?我听说过"单元测试","设计框架"以及各种其他概念,听起来会减少烦恼,使我的应用程序"健壮",一切都很容易理解:)

那么,对于接受过专业培训的人来说,这笔交易有多大错误?

谢谢 - Al C.

language-agnostic debugging

17
推荐指数
4
解决办法
2839
查看次数

当UI组件具有内置功能时,如何将应用程序逻辑与UI分开?

我知道将用户界面代码与域代码分开是很重要的 - 应用程序更容易理解,维护,更改,并且(有时)隔离错误.但这是我的精神障碍......

Delphi附带了可以满足我想要的方法的组件,例如,RichText Memo组件可以让我使用富文本.其他组件,如TMS的字符串网格,不仅可以满足我的需求,而且还为功能付出了额外的代价.这些功能将R放在RAD中.

编写我自己的类来做别人已经为我做过的事情似乎是不合逻辑的.它正在重新发明轮子[曾尝试直接使用富文本?:-)]但是如果我使用这些组件中内置的功能,那么我最终会得到很多混合的UI和域代码 - 我会在其事件处理程序中内置大部分代码.

你是如何处理这个问题的?...或者,如果我想继续使用其他人已经为我编写的代码,您会如何建议我处理该问题?

delphi oop separation-of-concerns

10
推荐指数
1
解决办法
1409
查看次数

德尔福数学:为什么0.7 <0.70?

如果我有变量a,b,类型为double的c,设c:= a/b,并给出a和b值为7和10,则c的值为0.7,寄存器小于0.70.

另一方面,如果变量都是类型扩展的,则c的值0.7不会注册为小于0.70.

这看起来很奇怪.我错过了哪些信息?

delphi math floating-point comparison types

10
推荐指数
4
解决办法
3638
查看次数

WordPress在哪里存储HTML页面?

我是WP的新手,但我一直在试验它,我喜欢它.所以,我正在将我当前的网站 - 主要是静态HTML文件 - 转移到WP.我的程序通常是在WP中创建新页面,然后将相关的正文HTML从我的文件复制到WP.不过,我很好奇,WP存储这些页面的地方?包含HTML的文件在哪里?...除了WP的仪表板中内置的小编辑器之外,能够处理页面的内容会很棒.

谢谢 - Al C.

wordpress

10
推荐指数
1
解决办法
2万
查看次数

View和ViewController有什么区别?

从Delphi来到Swift,我认为View代表了应用程序的GUI,故事板是View底层代码的直观表示.ViewController是View与之交互的唯一对象.当流行的教程说

在过去,开发人员曾经为每个视图控制器的设计创建单独的接口文件.

我认为"单独的接口文件"是View文件.但随着我了解更多,我感到困惑.文字说,在新应用程序的空Main.storyboard的屏幕截图下方

视图控制器的官方故事板术语是"场景",但您可以互换使用这些术语.场景代表了故事板中的视图控制器...在这里,您可以看到包含空视图的单个视图控制器.

所以我看到一个"单视图控制器",而不是视图?当我注意到故事板上显示的任何视图(?)在Swift中称为"视图控制器"时,会出现混淆.

那么,View和ViewController有什么区别?故事板是如何相关的?什么对象"拥有"像segue这样的东西,它存在于我对这些概念的理解之外?

swift

10
推荐指数
1
解决办法
8705
查看次数

初学者的松散耦合和OO实践

保持类松散耦合是编写易于理解,修改和调试的代码的一个重要方面 - 我明白了.不过,作为一个新手,我几乎可以在任何时候超越最简单的例子.

我或多或少地了解如何在自己的类中封装字符串,整数和简单数据类型.当我开始处理富文本格式等信息时,事情变得非常复杂 - 除非我只使用组件中已有的各种方法.继续这个例子,假设我正在写一些包含UI中的RTF备忘录组件的东西.在Delphi中,该组件具有内置方法,可用于保存格式化文本.此外,有时看起来使用RTF文本本身的唯一(或至少是最好的)方法是通过再次内置到组件中的方法.

当我已经拥有一个为我完成所有这些操作的组件时,我将如何(或为什么)在另一个类中执行保存,加载和格式化文本的所有工作?

就我自己而言,我通常最终要么(a)做一些看起来比需要复杂得多的事情,重新发明已经存在的方法,或者(b)创建仍然紧密耦合到彼此的做得很差的类.正如他们在商业中所说的那样,"必须有更好的方法!"

我只是在概念上迷失了"更好的方式"的运作方式.有什么想法吗?

oop loose-coupling

7
推荐指数
2
解决办法
3144
查看次数

如果一切都实现了接口,这会是垃圾收集吗?

我仍然是一个新手,我知道我的想法是不正确的; 我只是不知道在哪里 ......

几乎所有Delphi中的东西都来自TObject.如果所有内容都来自实现某些简单接口的TInterfaceObject(例如,"INamable",使用返回类名称字符串的单个方法),该怎么办?由于TObject已经有一个返回名称字符串的属性,因此您不需要向其他类添加任何内容.

换句话说,TInterfacedObject将从TObject(或层次结构中的高处)继承,并且当前从TObject继承的所有内容现在将从此新类继承.这是不是意味着现在一切都被引用了?

如果你能发现我缺乏知识的地方,我很乐意学习.谢谢,一如既往 - Al C.

delphi interface

7
推荐指数
2
解决办法
1291
查看次数

如何在两台计算机之间发送字符串?

可能重复:
Delphi网络初学者!

我想学习如何让两台机器进行通信,发送和接收简单的字符串.这些机器可能在同一个局域网上 - 或者不是.我想,我正在谈论的东西或多或少就像你在聊天程序中看到的那样.我理解Delphi,但对TCP,套接字,端口等内容一无所知.你会建议我在哪里学习这些东西?...我知道如何使用谷歌但老实说,我不完全确定哪里可以开始搜索!

谢谢,一如既往.

delphi tcp chat communication

7
推荐指数
2
解决办法
3479
查看次数

Post,ApplyUpdates和Commit for databases之间有什么区别?

在更改数据库后,我正在努力弄清楚我想要使用的命令.我正在通过SQLite3和db-aware控件学习,这是我的理解......

当用户在db-aware控件中键入内容(或以其他方式将内存数据集置于"编辑"状态)时,POST会将更改存储在内存中.控件通常会自动或隐式地为您执行此操作.

虽然您必须在任何地方发现任何更改之前发布,但更改尚未发送到磁盘上的实际数据库文件.他们只是在记忆中.将更改发送到磁盘需要APPLYUPDATES.

即使在通过磁盘发送到文件后,APPLYUDATES它们仍然可以更改或回滚.这就像击中撤消.COMMIT在调用之前,它们不会永久保存到磁盘.

这听起来不错吗?我真的很想知道我在做什么,所以我不只是复制和粘贴代码.但请随时复制,粘贴和编辑我的回复尝试.

database delphi sqlite lazarus

7
推荐指数
1
解决办法
2528
查看次数