By Edhy Rijo - 6/25/2008
Hi All, Is there any document, article, draft sample, etc. on how to create my Base SF classes with my custom changes that can be use in all my SF applications? I am feeling pretty confident with my SF learning and I am ready to start working on a 2nd SF project, but now I figured out that all the code I am using in my first project can not simply be copied over to the new project and I hate to keep repeating code and process when there should be a much better an efficient way to do this. I would really appreciate if anybody can take some time to describe this subclass process in order to crate a Base set of SF classes. hmmm, may be that could be an Enhancement Request Sorry Trent P.S. I know this will be part of the upcoming SF trainning class, but I can really wait, I need to start working on the 2nd SF project ASAP.
|
By Trent L. Taylor - 6/25/2008
Edhy,I don't know what you mean my an enhancement request as this has nothing to do with the framework as much as it does organizing your application. This is a topic that we cover in the training class and is broader than the scope of this forum. We have an entire section that we will cover in training. Sorry, but this is not something that we will go over in depth here on the forum as this requires explanation and, well...training.
|
By Edhy Rijo - 6/25/2008
Hi Trent,Sure I understand your points and that is one of the reasons I signed up for the training. What I meant with enhancement request is that as you know I am coming from VFP environment, VFP 3rd party Framework vendors includes blank subclasses in their process of creating a new project which help the developer in a way to just add their changes in one of the provided subclasses, in my case with Visual ProMatrix, they have the following classes: - The VPM class, this is the one with their source code, which they modify all the time.
- A DEV class which is global to all projects
- And a PRO class with is specific to the current project.
So whenever you create a new VPM project a new set of Pro Classes will be created for you, and the DEV classes will always be in a common path folder for all projects. Due to my lack of knowledge for the .NET environment, I don't know if this is even possible or feasible to do in .NET and more important in SF. In my case, I have several VFP projects that must be converted to SF, so I need to know how to handle the above situation in order to be more productive, and if there is any starting point kind of document or draft that will help me get started prior to the training, and from anybody in the forum I would really appreciate it.
|
By Trent L. Taylor - 6/25/2008
Edhy,This is the first time I have ever had a request for this. Really, once you see how to do this it is there is no need for empty classes. In fact, many of the assemblies and classes that you create could and should be used accross all of your projects. They should be re-usable! Obviously I understand the point of purchasing training and coming to class and we look forward to having you here. But this is not something that I want to elaborate on here on the forum because this turns into training on the forum, which is not the intent of the forum. This would basically require me to take the rest of the day, produce docs, samples, etc. just for this one post. This is not a feasible request. Sorry
|
By Edhy Rijo - 6/25/2008
This is the first time I have ever had a request for this. Trust me, you will see more of this coming from us (VFP-Frameworks users), even if they don't make sense in the .NET world. Really, once you see how to do this it is there is no need for empty classes. In fact, many of the assemblies and classes that you create could and should be used accross all of your projects. They should be re-usable! That sound pretty good. Obviously I understand the point of purchasing training and coming to class and we look forward to having you here. But this is not something that I want to elaborate on here on the forum because this turns into training on the forum, which is not the intent of the forum. Trent, don't worry about it. I do understand, and it is not my intention to have a training session in the forum, that is why I asked to anybody in the forum that has done this if they have any documentation or quick steps they could share since I am in the process of creating my 2nd SF project and wanted to reuse some of the code I have done. If nobody comes forward today, I will simply do what I can to advance this project and wait until the class to cleanup my messy code .
|
By Trent L. Taylor - 6/25/2008
Trust me, you will see more of this coming from us (VFP-Frameworks users), even if they don't make sense in the .NET world Well, keep this in mind...we used FoxPro (and dealt with VFP frameworks) for 17-18 years...so we have a little insight here too...not to say that more great ideas won't come down the pike
|
By Charles R Hankey - 7/6/2008
Edhy -
You and Randy Jean and I can get together on this and kick around ideas in Amarillo. VFE has exactly what you are talking about and Randy and I have discussed at length what this design means in the .NET / SF world.
I am starting to think that perhaps this is one of those areas where differences in the way inheritance and other things work in .NET and VFP might mean a different approach to having a custom version of SF classes that would be the starting point for SF projects - i.e. same idea, different implementation.
I'm holding off on even thinking about some of the stuff I want to do until I get training on how to dig into the SF source code without breaking everything like I did the last time.
So far the only principle I am sure carries over from the VFE world into the SF world is the maxim "Don't fight the framework" - or at least that's what I keep repeating to myself over and over agan
|
By Edhy Rijo - 7/6/2008
Charles R Hankey (07/06/2008) Edhy -
You and Randy Jean and I can get together on this and kick around ideas in Amarillo. VFE has exactly what you are talking about and Randy and I have discussed at length what this design means in the .NET / SF world. Hi Charles, Sure I am counting on that. Even my friend Doron Farber will be there with us. I am starting to think that perhaps this is one of those areas where differences in the way inheritance and other things work in .NET and VFP might mean a different approach to having a custom version of SF classes that would be the starting point for SF projects - i.e. same idea, different implementation. Agree. In my VFP-Framework experience, I am used to work with several projects at the same time, and by having the classes level I had, it was pretty easy to just change something at the DEV level and be inherited by all projects if needed to be, and when attempted to create a 3rd project in SF and try to re-used some of the classes or controls I have done, then it came frustration again . Of course this is all due to my lack of knowledge of .NET which I am sure the training will clear out.
I'm holding off on even thinking about some of the stuff I want to do until I get training on how to dig into the SF source code without breaking everything like I did the last time. Same situation here.
So far the only principle I am sure carries over from the VFE world into the SF world is the maxim "Don't fight the framework" - or at least that's what I keep repeating to myself over and over again
Agree. I have always told my fellow developers at the VPM (Visual ProMatrix) newsgroup the same thing, and it is because of that maxim that I was able to keep moving in this leaning curve. I was a VFE user for the DOS version and got stuck when they did the move to VFP and could not keep waiting for them to have a working VFP framework, so I had to move on, but one thing I love about VFE & VPME is the excellent documentation (help and printed materials) available to learn the tools. Somehow, I don't see that kind of documentation in the .NET arena, even the VS MSDN help is not friendly, I found it very difficult to find the stuff I need in comparison to the VFP help. SF help is good but still needs more work, and an option to print out the whole documentation for an easy reading. If it wasn't for the StrataTrain Videos (even though they are a bit outdated), this forum and the help of everybody here it would have been more difficult and frustrating to get into the .NET arena. Bottom line, I would be more than happy to get together in Amarillo and discuss about all this in order to enhance the tool we all choose to be the best .NET framework that suits our needs. I have been using VPM for over 10 years and I am sure you and Randy has been with VFE for many years, so I am glad to be part of this new family, StrataFrame and help in the growing process of our new framework.
|
By Aaron Young - 7/6/2008
Hi Edhy,I have used VPM and FoxPro and the best advice I can give you is to forget about both when thinking of SF/.NET. In my opinion, .NET is much better at sub-classing objects than FoxPro ever was and SF is far more powerful than VPM. Trying to equate SF/.NET back to VPM/Foxpro thinking, I believe, confuses the issue and doesn't help with the considerable learning curve with .NET. I realise this is a statement that could infuriate many VPM/FoxPro users and that is not my intention. In fact, I seem to recall being told on the VPM forums to "clear off to my .NET buddies" (or words to that effect) by one VPM user several years ago. Ironically, that very same VPM user is now a member of these forums and expressing regret at not getting into .NET sooner, so it would appear he has followed me which I find most amusing . In any event, the learning curve with .NET is a long path and there is MUCH to learn. However, it is well worth it. I still have to maintain an old VPM based application from time to time and I absolutely hate having to do it as VPM/Foxpro is so dated and cumbersome in comparison to .NET. SF adds another layer which is light years ahead of VPM. There should be many references on the web about .NET sub-classing and I do think it isn't really a SF issue. One really nice feature is you can freely change your class hierarchy without having to hack Foxpro files -so it is easy to experiment. Aaron
|
By Edhy Rijo - 7/6/2008
Hi Aaron, Aaron Young (07/06/2008)
Hi Edhy, I have used VPM and FoxPro and the best advice I can give you is to forget about both when thinking of SF/.NET. Agree, I have done that in order to get into .NET, but there are still some nice functionalities available in those frameworks which could enhance SF more. Keep in mind that were are not here to talk about which one is the best, obviously there could be not fare comparison between VFP/.NET since they are not look alike technologies. In my case, I would simply express what I would like to see in the framework I choose to stay with for the years to come. In my opinion, .NET is much better at sub-classing objects than FoxPro ever was and SF is far more powerful than VPM. Trying to equate SF/.NET back to VPM/Foxpro thinking, I believe, confuses the issue and doesn't help with the considerable learning curve with .NET. I realize this is a statement that could infuriate many VPM/FoxPro users and that is not my intention. In fact, I seem to recall being told on the VPM forums to "clear off to my .NET buddies" (or words to that effect ) by one VPM user several years ago. Ironically, that very same VPM user is now a member of these forums and expressing regret at not getting into .NET sooner, so it would appear he has followed me which I find most amusing . I also agree with you in the superiority of .NET and again, I am not trying to compare the two, otherwise I would simply stay with VFP/VPM, etc. I don't know which VPM user you are talking about, but I have seen many discussion in that regard and I simply try to avoid them, it is not worthy. All this depend on the time and place we are in terms of the new technology. In my case I got into .NET with VS2005 and with a framework that today and tomorrow will deliver the tools I need to be more productive, and that is why I choose SF instead of IdeaBlade, and that does not means IdeaBlade is bad at all. In any event, the learning curve with .NET is a long path and there is MUCH to learn. However, it is well worth it. I still have to maintain an old VPM based application from time to time and I absolutely hate having to do it as VPM/Foxpro is so dated and cumbersome in comparison to .NET. SF adds another layer which is light years ahead of VPM. Well, I also agree with you . I am moving to .NET due to conviction and not because a client X requested project X to be done in .NET. As a private consultant I get to decide which tools to use to deliver my customers solutions, and having a VFP/VPM project at a 65%, I decided to re-start it in .NET and I tried with IdeaBlade and SF, I gave each of them one week and I think you know the outcome . IdeaBlade even offers free training and has a tons of documentations and videos which help out, but for me SF is more suitable. There should be many references on the web about .NET sub-classing and I do think it isn't really a SF issue. One really nice feature is you can freely change your class hierarchy without having to hack Foxpro files -so it is easy to experiment. Yes, I even have some books that talks about it, but one can get confused from time to time, so there is not better time for the SF Training on July 14th. Like Trent has said here many times, it is easier than we though.
|
By Trent L. Taylor - 7/6/2008
We have several sections within the training class that talks about this very point. If you are re-creating much of this logic from one solution to another in .NET, you are not only fighting StrataFrame, but the structure and logic of .NET. So hopefully we will come to a resolution during the training class that you undertand and are content with on this topic.We are always open to new ideas and improving the framework. But there are also many new ways to think in regards to coming from a VFP background. We too had many of these very same thoughts when we first started in .NET and it took a while before some of the, "lights came o,." which I know will come on faster for each of use as I am a little slow sometimes. But like Charles said, let's get through the training and you may have many of these questions answered. I also know that there were many great concepts and ideas in the VFP frameworks that could translate into .NET (many of which we have implemented) while others just fall outside of the basic .NET structure and logic. Just like anything else, when moving from one platform to another there are going to surely always be different approaches and methods, and this is no different.
|
By Charles R Hankey - 7/7/2008
I think one of the things we have to keep in mind is that unlike VFP, which for the most part is a one-deep class library out of the box - .NET is in itself a complex framework ( 4,000 classes? ) and a .NET framework begins by building on that. This is both a source of riches and a PITA for the framework builder. IT would also seem that in .NET you'd be working with more of the native classes without automatically subclassing them. And in the framework, my limited knowledge of .NET causes me to guess that it is not necessary or particularly desireable to subclass the enitre SF class set into a "dev layer" or "i layer" but a more focused approach to extending particular objects either through inheritance or partial class or ... I'm sure there are possibilities I don't yet imagine ... might work better. I for one am going to work very hard to have in my head during the training a "feature set" of things I like in my current dev environment that I will look for ways to emulate in SF, but I want to keep my mind as open as possible to understanding the .NET/SF approach without looking for a direct translation from the *implementation* that I'm used to. I'm sure the VPM guys will do the same. The nice thing about having worked with (and benefitted greatly from) a successful framework is that you come to understand the benefits of using the framework as the designers intended and to place a good deal of trust that the designers have also thought about these issues and have made their decisions with a very in-depth knowledge of foundation the framework is built on. And in the VFE world I found that really getting into the designers' heads on these issues was an incredible learning tool for understanding the real issues in doing robust apps in that language. This is gonna be fun
|
By Trent L. Taylor - 7/7/2008
That was a very intelligent and intuitive response, Charles. This is both a source of riches and a PITA for the framework builder. Very accurate...and good choice of acronyms .NET causes me to guess that it is not necessary or particularly desireable to subclass the enitre SF class set into a "dev layer" or "i layer" but a more focused approach to extending particular objects either through inheritance or partial class or ... I'm sure there are possibilities I don't yet imagine ... might work better. As you will see, it is using a combination of both. And in fact, this is something that should be entirely cleared up in the class. This is gonna be fun Absolutely! I really enjoy these classes. They are a lot of fun!!! And it is always nice putting faces with forum posts
|
|