|
lets say i need the same effort to do it in c++ and C#.
The question is about the speed of the .net VS speen of the native code.
|
|
|
|
|
Native code will generally be faster than .NET, but of course the actual speed will depend on how well the code is writtem. Again it is impossible to know in advance which system will be better.
It's time for a new signature.
|
|
|
|
|
I kinda get a feeling that most here are some sort of professionals I mean at least make "some kind of money out of software to which they have contributed". I think I am not wrong if I say most here also do "hobby" projects.
At work, most are "supposed" to use certain tools and procedures. And by themselves, they either are "spoilt" by practice and continue the same that they employ at work or may use their tried-n-tested methodology.
I am interested in the kinds of tools and procedures that you guys make use of during the design stages, both at work and by yourselves. Do you (prefer to) use those fancy block/cloud diagram tools, flow charting tools and the like?
Personally, I prefer paper and pencil. I draw and jot down stuff using those. Oh, an eraser is handy as well If I need a soft copy of that, I use notepad where I use bullets and indentations to organize the ideas and layout. And somehow, I am lucky to be able to use this method at work too. (I mostly develop useful, reusable, non trivial components, along with an assistant, although at times I am also involved in using them in some of our products beyond the "demo" level). And I must not fail to emphasize that I dream a lot. I mean, I imagine a lot about the component, including the code that's going to come! So, most part of it is designed in the head but I sure do comment about those both in code and design document (although I am lazy to reproduce every thought into words and diagrams but I think thats OK as of now as I am the one who's in charge of what I do and also I can brief them to the bosses, unambiguously, when needed).
...byte till it megahertz...
|
|
|
|
|
Hi Vinay, here is my basic approach:
It usually starts with
- paper and pencil
- whiteboard
- show/talk/brainstorm with available/local experts (ideally focus on understanding the "ideas/problems")
- take a walk, coffee break, music, shower.. whatever helps to be creative and get a good overview (no rules)
then continues with
- initial sketches in Editor, OpenOffice, Visio (what's available)... see next step why:
- show/talk/brainstorm with experts and stakeholders, design reviews with those who will later use it
- apply some of your processes to get something written down (ideally focus on good "alternatives")
- narrowing down... prepare to switch your brain from creative to productive mode (really hard!)
and ends with:
- finalise documentation (ideally focus on "solutions" and not on throw-away reports)
- apply processes and "get it done" to the quality needed, e.g. documentation in a special form, reviewed, approved
- present and explain to people using it (unpack your show master qualities)
- set up a follow-up meeting for feedback/improvements/retrospective (also see agile development)
Hope this helps
/M
PS: With processes I mean best practices or development processes in your work area.
|
|
|
|
|
+5 for replying.
Thats interesting. LONG but interesting. In the second stage where you have to interact with the stakeholders, how "neat and proper" will you let those sketches be? (I am not talking about the correctness)
...byte till it megahertz...
|
|
|
|
|
Thanks. I usually involve them from the very beginning, if possible get everyone's ideas and wishes... then the sketches are not even existing. Otherwise anything that can be printed out on paper or projected onto a wall works for me, so not very "neat and proper" but sufficient to get the idea across. Generally, I wouldn't spend more time than necessary on things under constant change.
|
|
|
|
|
|
I know those people, they never deliver and spend much time on writing reports. Those with colors are the worst.
What's important for me is the final product! It has to be of good quality, look good, be well documented... and ready in time. I would try to pull that off to get boss points and a happy customer.
|
|
|
|
|
If you got money on your pocket..Spend some get IBM Rational design anything you want.Works best,, I've been using that since last 5 years.
Cheers from Canada.
|
|
|
|
|
Start with paper and pencil - best design tools there are.
"If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair.
nils illegitimus carborundum
me, me, me
|
|
|
|
|
+5 for being a fellow pp guy...I mean...pencil-paper guy
And then? What about the soft copy? How do you create those?
...byte till it megahertz...
|
|
|
|
|
I Agree that's best tool but you always need to convert that in Hard copy as you cannot hand in scanned copy of diagrams in Manual.
Cheers
|
|
|
|
|
I end up using MS Paint for design actually.
Don't laugh, I got used to it. Visio or other UML tools can end up eating a lot of time, so I first create quick & dirty designs with paint (copying and pasting makes it quite speedy) and if necessary translate that into fancy design with a real UML tool later.
|
|
|
|
|
No I didn't laugh.
When needing rough sketches in a soft copy, I use MS Excel and MS Paint. The cell formatting in excel saves me the trouble of aligning text, filling color etc in paint. Paint is just to cut the big screen capture, organize the boxes and other things like lines etc. I have a couple of paints running.
People may find this unproductive but they got to use it to see it.
|
|
|
|
|
Dear all,
Hi, i want to develop a web-based system.
May i know what kind of methodology more suitable for me?
below is my criteria:-
a)individual developer.
b)not client are involved.
Any help is apprieciated.
Best regards,
Nasri
|
|
|
|
|
ASP.NET[^]
It's time for a new signature.
|
|
|
|
|
Everybody, I have some MVC of problem, I reference more information, and I write the Model, the Controller and more than one View, but I don't know my code is consistent with MVC? Please give some help! Thank you~
import java.util.*;
public class Initial {
public static void main(String[] args) {
View v = new View("View");
View2 v2 = new View2("View2");
Model m = new Model();
Controller c = new Controller(m);
c.add(v);
c.add(v2);
v.display();
v2.display();
c.showAryList();
}
}
public class Model {
private enum States {
Add, Subtract
};
private States state;
public Model() {
}
public void changeToAdd() {
this.state = States.Add;
}
public void changeToSubtract() {
this.state = States.Subtract;
}
public int caculate(int x, int y) {
int currentInt = 0;
if (this.state == States.Add) {
currentInt = add(x, y);
}
if (this.state == States.Subtract) {
currentInt = substract(x, y);
}
return currentInt;
}
public int add(int x, int y) {
return x + y;
}
public int substract(int x, int y) {
return x - y;
}
}
import java.util.*;
public class Controller {
private Model m;
private List aryList;
public Controller(Model m) {
this.m = m;
aryList = new ArrayList();
}
public void add(Viewable v) {
aryList.add(v);
System.out.println(v.getName() + "add!");
v.addController(this);
}
public void removeView(Viewable v) {
aryList.remove(v);
System.out.println(v.getName() + "remove!");
}
public void sumNumber(Viewable v, int N1, int N2) {
this.m.changeToAdd();
if (aryList.contains(v)) {
((Viewable) this.aryList.get(aryList.indexOf(v))).show(this.m
.caculate(N1, N2));
}
removeView(v);
}
public void substractNumber(Viewable v, int N1, int N2) {
this.m.changeToSubtract();
if (aryList.contains(v)) {
((Viewable) this.aryList.get(aryList.indexOf(v))).show(this.m
.substract(N1, N2));
}
}
public void showAryList() {
for (int i = 0; i < aryList.size(); i++) {
System.out.println(aryList.get(i).getClass());
}
}
}
public interface Viewable {
public String getName();
public void addController(Controller c);
public void show(int result);
}
import java.util.*;
public class View implements Viewable {
private int no1;
private int no2;
private Controller c;
private String name;
public View(String n) {
this.name = n;
}
public String getName() {
return this.name;
}
public void addController(Controller c) {
this.c = c;
}
public void display() {
Scanner s = new Scanner(System.in);
System.out.print("No 1:");
no1 = s.nextInt();
System.out.print("No 2:");
no2 = s.nextInt();
c.sumNumber(this, no1, no2);
}
public void show(int result) {
System.out.println(no1 + "+" + no2 + "=" + result);
}
}
import java.util.Scanner;
public class View2 implements Viewable {
private int no1;
private int no2;
private Controller c;
private String name;
public View2(String n) {
this.name = n;
}
public String getName() {
return this.name;
}
public void addController(Controller c) {
this.c = c;
}
public void show(int result) {
System.out.println(no1 + "-" + no2 + "=" + result);
}
public void display() {
Scanner s = new Scanner(System.in);
System.out.print("No 1:");
no1 = s.nextInt();
System.out.print("No 2:");
no2 = s.nextInt();
c.substractNumber(this, no1, no2);
}
}
|
|
|
|
|
I doubt that anyone will want to wade through your code on the off-chance it might be problematic. The purpose of the forum is to answer questions relating to specific issues not for peer review.
"If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." Red Adair.
nils illegitimus carborundum
me, me, me
|
|
|
|
|
I am developing an e-commerce site.
I am confused with two payment choices.
1. Paypal and Credit Card.
2. Using a bank transaction to the merchant bank.
My doubt is whether we can do a bank transaction better than paypal and credit card.? We can associate an orderID with every paypal payment and the merchant can receive emails from paypal regarding orderid and payment. Is this flexibility is available with banks? What are the problems in integrating a bank account transfer concept?
|
|
|
|
|
I work in a small team developing a asp.net web app in C#. We have 15-20 pages (modules) that offer mostly different kinds of inventory tracking. On each page (amongst other things) there are various dropdown fields available for users to choose from. Almost none of these fields overlap so we have many different lists to manage.
We're currently in a development style argument though. Right now all the dropdown fields are manually listed. Meaning, on each page, for each dropdown field, we have the list items typed out in the aspx page.
For example:
<InsertItemTemplate>
<asp:DropDownList id="ddlStatusInsert" runat="server" >
<asp:ListItem Value="">Unknown</asp:ListItem>
<asp:ListItem>Available</asp:ListItem>
<asp:ListItem>Out of Service</asp:ListItem>
<asp:ListItem>Closed</asp:ListItem>
<asp:ListItem>Lost</asp:ListItem>
</asp:DropDownList>
</InsertItemTemplate>
Now, we want to create 'list managers' for these. So move the values to a separate database table and dynamically pull from the tables to populate the dropdowns.
First question, I'm curious what your typical projects look like in regards to this issue. Are the dropdown values manually listed out and what do you think of that method?
Second question (and the biggest source of disagreement on our team), when you do move the values out to separate tables, do you continue to store the string values in the original database tables and join to the 'list manager' tables on that string, or do you create IDs on the 'list manager' tables and do a bunch of JOINs on the IDs between the original tables and the new tables?
It's being hotly debated here and I'm curious what the projects out there face in similar situations.
Thanks!
|
|
|
|
|
anjelone2 wrote: First question, I'm curious what your typical projects look like in regards to this issue. Are the dropdown values manually listed out and what do you think of that method?
No. Just because you can manually add the items doesn't mean you should. What happens if you want to offer localised versions or you want to add a new item or remove one?
anjelone2 wrote: Second question (and the biggest source of disagreement on our team), when you do move the values out to separate tables, do you continue to store the string values in the original database tables and join to the 'list manager' tables on that string, or do you create IDs on the 'list manager' tables and do a bunch of JOINs on the IDs between the original tables and the new tables?
Why is this even being debated. Have they never heard of database normalisation? Look at the space that's being wasted in a table storing the string values for every row - store the id of the item from the lookup table and do a join instead. It's only a few extra characters. BTW - one objection I sometimes hear is that you can't delete a lookup item in future because this breaks referential integrity, and this is true - you should never delete a lookup that has been used. What you can do though is add a Deleted column which indicates whether or not the item has been deleted.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
To the second question, one side argues the point you make exactly. That is what relational databases are made for and allows scalability without much thought. It is also just good programming practice.
The other side argues something to your BTW point. They feel that when a list value changes, there is no way to capture what the old value was (for tracking sake). That side also argues that it makes joins to the main table lengthy, especially if there are 6-10 lists to join to. That's 6-10 LEFT OUTERs on that query.
|
|
|
|
|
anjelone2 wrote: They feel that when a list value changes, there is no way to capture what the old value was (for tracking sake).
Of course there is. Audit your lookup data and store the old value in a history table (along with the period it applies to).
anjelone2 wrote: That side also argues that it makes joins to the main table lengthy, especially if there are 6-10 lists to join to. That's 6-10 LEFT OUTERs on that query.
And that's just laziness. It's not a valid argument.
"WPF has many lovers. It's a veritable porn star!" - Josh Smith As Braveheart once said, "You can take our freedom but you'll never take our Hobnobs!" - Martin Hughes.
My blog | My articles | MoXAML PowerToys | Onyx
|
|
|
|
|
anjelone2 wrote: That's 6-10 LEFT OUTERs on that query
Hide them behind a view
I are Troll
|
|
|
|
|
anjelone2 wrote: That is what relational databases are made for and allows scalability without much thought. It is also just good programming practice.
Surely this alone is enough to win the argument?
The counterarguments are pretty much just rubbish, as the other posters have just pointed out:
anjelone2 wrote: it makes joins to the main table lengthy, especially if there are 6-10 lists to join to
This is particularly offensive, anyone arguing this doesn't understand the nature of relational databases properly or is just plain idle. There is good, solid maths behind database design, if you understand this and apply it correctly your system will be much more scalable and robust. The only real problem with relational Databases is how to translate the real-world information into the abstract relational world, but all IT systems (except those modelling abstract systems themselves) inherently suffer from this problem.
|
|
|
|
|