我在一个中型开发团队工作,该团队维护一个用Java 1.4编写的8年以上的Web应用程序.
对于新的开发,我总是试图说服人们遵守更新的标准和最佳实践,这些简单的事情就像使用新的命名标准,如HtmlImplementation而不是HTMLImplementation,以及为什么最好是针对接口编码而不是针对具体类编码,支持不可变性或对象组合过度继承.
我在Stackoverflow中找到了这个相当通用的链接,它不是面向Java的,也不是完整的.
我总是试图解释我的论点背后的基本原理,并且总是建议人们购买最新版的Effective Java,但并不是每个开发人员都会毫不犹豫地接受我的话(这是一件好事).
当发生这种情况时,他们经常会问我指点,他们可以进一步阅读有关该特定良好做法的内容,有时我无法快速找到关于此的指示.
您是否可以在"最佳实践"参考的"集合"中收集在线资料的链接,我可以随时查看并向我的队友建议"进一步阅读"?
我有一个简单的网页,到现在为止不需要任何登录.它是用Perl CGI编程的.
我想知道添加会话支持的步骤,以便获得登录信息.
我不想要非常复杂的方法,因为网页非常简单.
另外,我想要一些关于支持Perl会话所需的技术/库的建议.
基本上我想使用RegEx来抓取文档中各段之间的内容.我认为表达式是:
<p>.+?</p>
Run Code Online (Sandbox Code Playgroud)
假设它使用此RegEx抓取10个项目,然后我希望PHP随机选择其中一个,然后将其保存到变量.有任何想法吗?
我有以下代码:
Using cmd As SqlCommand = Connection.CreateCommand
cmd.CommandText = "UPDATE someTable SET Value = @Value"
cmd.CommandText &= " WHERE Id = @Id"
cmd.Parameters.AddWithValue("@Id", 1234)
cmd.Parameters.AddWithValue("@Value", "myValue")
cmd.ExecuteNonQuery
End Using
Run Code Online (Sandbox Code Playgroud)
我想知道是否有任何方法可以将最终的SQL语句作为String获取,它应该如下所示:
UPDATE someTable SET Value = "myValue" WHERE Id = 1234
Run Code Online (Sandbox Code Playgroud)
如果有人想知道为什么我会这样做:
我有一个C#中的整数列表.我希望删除重复项.在C++中,我将通过std :: sort和std :: unique算法运行它,以获得唯一列表的高效方法.
在C#中做同样事情的最佳方法是什么?换句话说,我正在寻找一种更优雅的方式来执行以下代码:
private static int[] unique(int[] ids)
{
IDictionary<int, object> d = new Dictionary<int, object>();
foreach(int i in ids)
d[i] = null;
int[] results = new int[d.Count];
int j = 0;
foreach(int id in d.Keys)
results[j++] = id;
return results;
}
Run Code Online (Sandbox Code Playgroud) 假设我正在开发一个安装COM组件的应用程序,安装程序会注册它们.这非常有效.
现在该软件需要从记忆棒运行.如何注册库运行时并确保在运行应用程序后清理注册表?
我正在寻找一种方法来为我的网站实施推荐系统.
最初我使用http://mysite.com/?affid=0001并使用查询字符串affid值中的affid来记录推荐.这样做的问题在于,从一些常见的谷歌搜索词组中,与谷歌搜索的链接出现在Google搜索中的标准链接之前,这意味着联盟会因错误地获得使用谷歌搜索我们网站的客户的信用.
我还听说有多个不同的链接引用同一页面(例如http://mysite.com/?affid=0001和http://mysite.com/?affid=0002)会导致Google降低您的排名.这是真的?
有没有人能解决这些问题?
我有一些功能来找到一个值:
struct FindPredicate
{
FindPredicate(const SomeType& t) : _t(t) {
}
bool operator()(SomeType& t) {
return t == _t;
}
private:
const SomeType& _t;
};
bool ContainsValue(std::vector<SomeType>& v, SomeType& valueToFind) {
return find_if(v.begin(), v.end(), FindPredicate(valueToFind)) != v.end();
}
Run Code Online (Sandbox Code Playgroud)
现在我想编写一个函数来检查向量的所有成员是否满足该谓词:
bool AllSatisfy(std::vector<SomeType>& v) {
/* ... */
}
Run Code Online (Sandbox Code Playgroud)
一种解决方案是使用该std::count_if算法.
有没有人知道一个涉及否定谓词的解决方案?
我打算使用nhibernate作为ORM来实现我的下一个项目(asp.net MVC).由于我没有使用nhibernate的经验,我想知道如何组织不同项目之间的依赖关系.我已经看到这样的东西作为推荐的方法:
----- UI-----------------------------
| | |
| | |
Model NHibernate
问题是我不希望UI代码直接与nhibernate交互,所以我想到这样的事情:
Facade,实际上将拥有存储库以及封装nhibernate对象.
这听起来合理吗?首选架构是否有任何指导方针?
感谢名单