[目的-C]
您是否仍然使用聚苯乙烯泡沫塑料球来模拟您的系统,每个球代表一个类?
汤姆爱:实际上,我们这样做.我们还完成了它的3D动画版本,我们发现它远不如聚苯乙烯泡沫塑料球那么有用.在开发项目中间的天花板上悬挂着一个物理的,显眼的结构,它定期更新,不仅提供您正在构建的系统的结构,还提供每个类的当前状态.
我们最后一次计算时,我们已经完成了19个项目.其中一个是1,856个班级,这很大 - 实际上,可能比它应该更大.这是一个很大的商业项目,所以它需要有点大.
这是我第一次阅读或听说过使用聚苯乙烯泡沫塑料球来模拟课程.
这是一种常用的技术吗?而且,这种建模如何帮助我们更好地设计系统?
如果您有任何可以分享的照片,可以向我们展示如何表示课程,那就太棒了!
更新:所以,似乎大多数人使用的材料是纸.聚苯乙烯泡沫塑料球实际上是古怪的,不是常用的技术.
值得注意的技巧:
谢谢大家的非常好的答案.
我有一个ProductService方法接口findByCriteria.该方法具有空的参数的,像一个长长的清单productName,maxCost,minCost,producer等等.
我通过引入参数对象重构了这个方法.我创建了类SearchCriteria,现在方法签名如下所示:
findByCriteria (SearchCriteria criteria)
Run Code Online (Sandbox Code Playgroud)
我认为这些实例SearchCriteria只是由方法调用者创建的,并且只在findByCriteria方法内部使用,即:
void processRequest() {
SearchCriteria criteria = new SearchCriteria ()
.withMaxCost (maxCost)
.......
.withProducer (producer);
List<Product> products = productService.findByCriteria (criteria);
....
}
Run Code Online (Sandbox Code Playgroud)
和
List<Product> findByCriteria(SearchCriteria criteria) {
return doSmthAndReturnResult(criteria.getMaxCost(), criteria.getProducer());
}
Run Code Online (Sandbox Code Playgroud)
所以我不想创建一个单独的公共类SearchCriteria并将其放入ProductServiceInterface:
public interface ProductService {
List<Product> findByCriteria (SearchCriteria criteria);
static class SearchCriteria {
...
}
}
Run Code Online (Sandbox Code Playgroud)
这个界面有什么不好的吗?你SearchCriteria上课的地方在哪里?
我这里有一个非常简单的C++代码:
char *s = new char[100];
strcpy(s, "HELLO");
delete [] s;
int n = strlen(s);
Run Code Online (Sandbox Code Playgroud)
如果我通过按F5(开始调试)从Visual C++ 2008运行此代码,这总是导致崩溃(访问冲突.)但是,在IDE外部启动此可执行文件,或使用IDE的Ctrl + F5(启动而不调试)不会'导致任何崩溃.有什么区别?
我还想知道是否可以稳定地重现因访问已删除区域而导致的访问冲突崩溃?现实生活中这种崩溃难得一见吗?
谈到这个好友问题,我想知道如何管理Scrum流程中的规范?我在为sprint分配任务时遇到了这个问题.不用说 - 我是Agile/Scrum的新手.
目前,我们使用自己的规格表将StoryId映射到SpecId,反之亦然.我对Scrum的关注更多的是关于项目管理[按时完成工作],你需要一个单独的流程来管理规范和要求.
我们如何管理Scrum流程中的规范?
Eclipse 将 findViewById(int) 标记为未定义;它对 getResources() 做了同样的事情,但我能够通过调用 context.getResources() 来解决这个问题(如下所示),并且似乎无法为 findViewById 找到类似的解决方法。这是代码:
package com.myapp.android.MyWidget;
import android.appwidget.AppWidgetProvider;
import android.appwidget.AppWidgetManager;
import android.content.Context;
import android.content.ComponentName;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.util.Log;
import android.view.View;
import android.widget.RemoteViews;
import android.widget.Button;
import android.os.Bundle;
public class MyWidget extends AppWidgetProvider {
private static String[] states;
@Override
public void onEnabled(Context context) {
final Button button = (Button) findViewById(R.id.widget_state_button);
states = context.getResources().getStringArray(R.array.states);
}
Run Code Online (Sandbox Code Playgroud)
我需要为 findViewById 导入另一个包吗?提前致谢。
当您开发一个与oracle DB对话的Java应用程序时,有两个选项吗?一个是oracle瘦驱动程序,另一个是需要自己安装的OCI驱动程序(如果我误解,请更正).
现在,有什么利弊?很明显,薄型驱动器在安装方面听起来要好得多,但是OCI可以做什么,薄的却不行?
开发环境是Tomcat6 + Spring 3.0 + JPA(Hibernate)+ apache-DBCP
我的公司希望使用Liferay开发门户网站并将Alfresco与其集成以进行文档管理.但Liferay和Alfresco都是基于Java的,我想知道在PHP或Python中是否有Liferay和Alfresco的替代品.
谢谢
我很困惑从PHP脚本发送邮件时遇到问题.一些数据:
这是代码:
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
$to = "myaddress@mydomain.com";
$subject = "Hi";
$body = "Test 1\nTest 2\nTest 3";
$headers = 'From: info@domain.com' . "\r\n" .
'errors-to: myaddress@mydomain.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if (mail($to, $subject, $body, $headers)) {
echo("Message successfully sent");
} else {
echo("Message sending failed");
}
require('class.phpmailer.php');
$message = "Hello world";
$mail = new PHPMailer();
$mail->CharSet = "UTF-8";
$mail->AddAddress("myaddress@mydomain.com", "Agos");
$mail->SetFrom("info@domain.com","My Site");
$mail->Subject = "Test Message";
$mail->Body = $message;
$mail->Send();
?>
Run Code Online (Sandbox Code Playgroud)
这就是我得到的: …