Search Results

Search found 18648 results on 746 pages for 'left join'.

Page 342/746 | < Previous Page | 338 339 340 341 342 343 344 345 346 347 348 349  | Next Page >

  • Avoiding coupling

    - by Seralize
    It is also true that a system may become so coupled, where each class is dependent on other classes that depend on other classes, that it is no longer possible to make a change in one place without having a ripple effect and having to make subsequent changes in many places.[1] This is why using an interface or an abstract class can be valuable in any object-oriented software project. Quote from Wikipedia Starting from scratch I'm starting from scratch with a project that I recently finished because I found the code to be too tightly coupled and hard to refactor, even when using MVC. I will be using MVC on my new project aswell but want to try and avoid the pitfalls this time, hopefully with your help. Project summary My issue is that I really wish to keep the Controller as clean as possible, but it seems like I can't do this. The basic idea of the program is that the user picks wordlists which is sent to the game engine. It will pick random words from the lists until there are none left. Problem at hand My main problem is that the game will have 'modes', and need to check the input in different ways through a method called checkWord(), but exactly where to put this and how to abstract it properly is a challenge to me. I'm new to design patterns, so not sure whether there exist any might fit my problem. My own attempt at abstraction Here is what I've gotten so far after hours of 'refactoring' the design plans, and I know it's long, but it's the best I could do to try and give you an overview (Note: As this is the sketch, anything is subject to change, all help and advice is very welcome. Also note the marked coupling points): Wordlist class Wordlist { // Basic CRUD etc. here! // Other sample methods: public function wordlistCount($user_id) {} // Returns count of how many wordlists a user has public function getAll($user_id) {} // Returns all wordlists of a user } Word class Word { // Basic CRUD etc. here! // Other sample methods: public function wordCount($wordlist_id) {} // Returns count of words in a wordlist public function getAll($wordlist_id) {} // Returns all words from a wordlist public function getWordInfo($word_id) {} // Returns information about a word } Wordpicker class Wordpicker { // The class needs to know which words and wordlists to exclude protected $_used_words = array(); protected $_used_wordlists = array(); // Wordlists to pick words from protected $_wordlists = array(); /* Public Methods */ public function setWordlists($wordlists = array()) {} public function setUsedWords($used_words = array()) {} public function setUsedWordlists($used_wordlists = array()) {} public function getRandomWord() {} // COUPLING POINT! Will most likely need to communicate with both the Wordlist and Word classes /* Protected Methods */ protected function _checkAvailableWordlists() {} // COUPLING POINT! Might need to check if wordlists are deleted etc. protected function _checkAvailableWords() {} // COUPLING POINT! Method needs to get all words in a wordlist from the Word class } Game class Game { protected $_session_id; // The ID of a game session which gets stored in the database along with game details protected $_game_info = array(); // Game instantiation public function __construct($user_id) { if (! $this->_session_id = $this->_gameExists($user_id)) { // New game } else { // Resume game } } // This is the method I tried to make flexible by using abstract classes etc. // Does it even belong in this class at all? public function checkWord($answer, $native_word, $translation) {} // This method checks the answer against the native word / translation word, depending on game mode public function getGameInfo() {} // Returns information about a game session, or creates it if it does not exist public function deleteSession($session_id) {} // Deletes a game session from the database // Methods dealing with game session information protected function _gameExists($user_id) {} protected function _getProgress($session_id) {} protected function _updateProgress($game_info = array()) {} } The Game /* CONTROLLER */ /* "Guess the word" page */ // User input $game_type = $_POST['game_type']; // Chosen with radio buttons etc. $wordlists = $_POST['wordlists']; // Chosen with checkboxes etc. // Starts a new game or resumes one from the database $game = new Game($_SESSION['user_id']); $game_info = $game->getGameInfo(); // Instantiates a new Wordpicker $wordpicker = new Wordpicker(); $wordpicker->setWordlists((isset($game_info['wordlists'])) ? $game_info['wordlists'] : $wordlists); $wordpicker->setUsedWordlists((isset($game_info['used_wordlists'])) ? $game_info['used_wordlists'] : NULL); $wordpicker->setUsedWords((isset($game_info['used_words'])) ? $game_info['used_words'] : NULL); // Fetches an available word if (! $word_id = $wordpicker->getRandomWord()) { // No more words left - game over! $game->deleteSession($game_info['id']); redirect(); } else { // Presents word details to the user $word = new Word(); $word_info = $word->getWordInfo($word_id); } The Bit to Finish /* CONTROLLER */ /* "Check the answer" page */ // ?????????????????? ( http://pastebin.com/cc6MtLTR ) Make sure you toggle the 'Layout Width' to the right for a better view. Thanks in advance. Questions To which extent should objects be loosely coupled? If object A needs info from object B, how is it supposed to get this without losing too much cohesion? As suggested in the comments, models should hold all business logic. However, as objects should be independent, where to glue them together? Should the model contain some sort of "index" or "client" area which connects the dots? Edit: So basically what I should do for a start is to make a new model which I can more easily call with oneliners such as $model->doAction(); // Lots of code in here which uses classes! How about the method for checking words? Should it be it's own object? I'm not sure where I should put it as it's pretty much part of the 'game'. But on another hand, I could just leave out the 'abstraction and OOPness' and make it a method of the 'client model' which will be encapsulated from the controller anyway. Very unsure about this.

    Read the article

  • 'Situations gone wrong' for web apps...

    - by AvgJoe007
    Hi all I know there's some decent material floating around relating to more specific areas, but wanted to get some opinions from people who have had bad experiences in the past. I have a project where I can have a say on the design of a B2C web app, which has some external API interfaces. UX is crucial as is speed. Not sure what technology will be used at this stage. In designing this application, I want to make sure obvious features are not left out (i.e. ones that make maintenance/development easier). So can you guys tell me about 'situations gone wrong' that could have been avoided had more consideration taken place? Am looking to gather feedback in general, so don't worry if your example is industry/technology specific - so long as it pertains to web. Thanks for reading, I look forward to your responses!

    Read the article

  • How do I install xulrunner in 12.04?

    - by chessplayer
    I am trying to migrate a virtual machine I use for my classes at the university from 10.04 to 12.04 and in that I am using xulrunner so that first, I can have SQLiteManager as a stand alone app next, KNIME can provide help for its nodes I tried adding the the mozilla ppa as described in some posts, e.g. here or here, but when I search for xulrunner in Synaptic I get no match. I read in this link, that xulrunner was left out intentionally, which, frankly, I think is a bad decision! Anyway, does anyone know a way out of this, i.e. how to get xulrunner for 12.04? Any help appreciated!

    Read the article

  • Problem while installing (K)ubuntu 14.04

    - by Armin
    Im trying to install Kubuntu 14.04 along-side Windows 7 x64 but there are problems in Disk Setup section, installer does not show my drives properly as they are, i left drive empty to install Kubuntu but this drive does not shown at all and all drives are listed some way un-regular. this is how my drives really are: i want to install Kubuntu in my drive D but this is how Disk Setup is showing my drives: and when i click on manual: i even shrink-ed my drive D to assigning for root, home and swap but there are bot shown to be chosen. where is the problem? how can i tell installer to assign the drives that i want?

    Read the article

  • How to modify the default position of desktop icons

    - by Hanynowsky
    Is it possible to modify the default desktop icons position so that icons move a little bit to right. If yes, how? As far as I know, there is no tweak for that in Nautilus. When I click "Organize Desktop by Name", the icons get aligned to the left of Desktop: that's fine, but they're too close to the launcher when it's in AUTO HIDE mode. So when Launcher is revealed, it comes over icons. Reproduce: Download some files from your browser or copy files/folders from a folder to the desktop, then these latter will be placed just like the screenshot. Their position is fine when the launcher is hidden, but when revealed, it hides a part of the icons. There is no problem when LAUNCHER AUTO-HIDE MODE is disabled. Thanks in advance.

    Read the article

  • Creating Rectangle-based buttons with OnClick events

    - by Djentleman
    As the title implies, I want a Button class with an OnClick event handler. It should fire off connected events when it is clicked. This is as far as I've made it: public class Button { public event EventHandler OnClick; public Rectangle Rec { get; set; } public string Text { get; set; } public Button(Rectangle rec, string text) { this.Rec = rec; this.Text = text; } } I have no clue what I'm doing with regards to events. I know how to use them but creating them myself is another matter entirely. I've also made buttons without using events that work on a case-by-case basis. So basically, I want to be able to attach methods to the OnClick EventHandler that will fire when the Button is clicked (i.e., the mouse intersects Rec and the left mouse button is clicked).

    Read the article

  • Are developers expected to have skills of business analysts?

    - by T. Webster
    Our business analyst has left the team. We are now expected to do the work which was previously done by the business analyst, and the management thinks that a task which is done in three months by a business analyst can be done in one month by a developer. My experience is in programming only, and I'm not familiar to the business intelligence tools. To me this seems like maybe an unfair comparison or expectation, and might even trivialize the role of a business analyst. Has anyone else encountered this situation? How to deal with it?

    Read the article

  • How can I get accurate collision resolution on the corners of rectangles?

    - by ssb
    I have a working collision system implemented, and it's based on minimum translation vectors. This works fine in most cases except when the minimum translation vector is not actually in the direction of the collision. For example: When a rectangle is on the far edge on any side of another rectangle, a force can be applied, in this example down, the pushes one rectangle into the other, particularly a static object like a wall or a floor. As in the picture, the collision is coming from above, but because it's on the very edge, it translates to the left instead of back up. I've searched for a while to find an approach but everything I can find deals with general corner collisions where my problem is only in this one limited case. Any suggestions?

    Read the article

  • Is it costly to leave the Console and Script features enabled in Firebug?

    - by parisminton
    For some time now, I've run Firebug constantly enabled to do quick DOM inspections, leaving the Console and Script panels disabled. I'm just starting to use these two features so I don't have to keep using alerts for testing and debugging. I enable them while I use them and turn them back off when I'm done. I'd like to know if these particular features can slow things down such that they shouldn't be left on round-the-clock. Like do they slow down page loads, use inordinate chunks of memory or something? I don't see anything about it in the Firebug wiki.

    Read the article

  • Is it costly to leave the Console and Script features enabled in Firebug?

    - by parisminton
    For some time now, I've run Firebug constantly enabled to do quick DOM inspections, leaving the Console and Script panels disabled. I'm just starting to use these two features so I don't have to keep using alerts for testing and debugging. I enable them while I use them and turn them back off when I'm done. I'd like to know if these particular features can slow things down such that they shouldn't be left on round-the-clock. Like do they slow down page loads, use inordinate chunks of memory or something? I don't see anything about it in the Firebug wiki.

    Read the article

  • "Time Control" in a 2d Platformer

    - by Woody Zantzinger
    I am making a 2d platformer where the player can press a button, and restart the level, only their previous character will also run the level at the same time, like they are traveling back in time. I know other games have done this before, and the way I have thought of doing it is to make the game character have a set of actions (Idle, Jumping, Walking Left etc.) and then detect changes in those actions and log them into a list along with the game time. So then when I need the character to run the level again on its own, I can just go through the list changing its actions at the right time. Is this the best way to do it? Does anyone have any experience in this? Thanks.

    Read the article

  • First blog post from Surface RT using Microsoft Word 2013

    - by Enrique Lima
    One of the concerns I had in using a Surface RT was the need I have to be able to post.Recently, and not so recently, I have stopped posting. Between getting busy, carrying different devices. Well, it has been hard to do. Tried doing that with an iPad, and I can't say it didn't work, it just didn't work for me. Again, back to the concern with the Surface RT. But, looking at the App Store I started getting that same frustration I had with other platforms that left me with a feeling of "I have to compromise because I am on a SubText platform". So, I stuck to posting from Windows Live Writer (great tool!). This whole situation made me think and rethink my strategy, and then … a big DUH! What about using Microsoft Word 2013 for that? Would it work? So, here is the test!

    Read the article

  • Chrome + Touchscreen + Unity (14.04)

    - by Luis Fernando P. Gonzalez
    I've got a Dell 14R with touchscreen with Ubuntu 14.04. When I start Google Chrome by clicking the launcher with the TouchPad or with the Super+ combination, touch support in Chrome doesn't work. When I touch some element, it only gets focus, but doesn't activate the element (button, field, etc). And touch gestures don't work. In the other hand, if I start Chrome by touching the launcher button, touch scroll works in Chrome, even flicking to left does back to the previous page, etc. It doesn't makes sense to me, but is always like this, even across reboots. Anyone can confirm this? Any idea on how to fix?

    Read the article

  • if ('constant' == $variable) vs. if ($variable == 'constant')

    - by Tom Auger
    Lately, I've been working a lot in PHP and specifically within the WordPress framework. I'm noticing a lot of code in the form of: if ( 1 == $options['postlink'] ) Where I would have expected to see: if ( $options['postlink'] == 1 ) Is this a convention found in certain languages / frameworks? Is there any reason the former approach is preferable to the latter (from a processing perspective, or a parsing perspective or even a human perspective?) Or is it merely a matter of taste? I have always thought it better when performing a test, that the variable item being tested against some constant is on the left. It seems to map better to the way we would ask the question in natural language: "if the cake is chocolate" rather than "if chocolate is the cake".

    Read the article

  • Solving programming problems or contributing code?

    - by nischayn22
    What are the best skills to develop for a college graduate?? Should one spend hours/days trying to solve problems on codechef or topcoder or contribute code to open source organizations? My personal experience says solving problems teaches you how to make optimal code and learn new programming techniques (which someone else has researched and made available) to solve problems, whereas contributing to open source teaches you how to organize code (so others can work on it), use coding conventions and make "real" use of what you have learnt so far, blah blah!! Also another thing to note is that many companies are hiring today based on one's problem solving skills (Is this something I should worry about?) P.S. I have done little of online problem solving and little of code contribution (via GSoC), but left confused what I should continue doing (as doing both simultaneously isn't easy).

    Read the article

  • Bad texture on model with different GPU

    - by Pacha
    I have some kind of distortion on the texture of my 3D model. It works perfectly well on an AMD GPU, but when testing on a integrated Intel HD graphics card it has a weird issue. I don't have a problem with the rest of my entities as they are not scaled. The models with the problems are scaled, as my engine supports different sizes for the platforms. I am using Ogre3D as rendering engine, and GLSL as shader language. Vertex shader: #version 120 varying vec2 UV; void main() { UV = gl_MultiTexCoord0; gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; } Fragment shader: #version 120 varying vec2 UV; uniform sampler2D diffuseMap; void main(void) { gl_FragColor = texture(diffuseMap, UV); } Screenshot (the error is on the right and left side, the top and bottom part are rendered perfectly well):

    Read the article

  • Managing text-maps in a 2D array on to be painted on HTML5 Canvas

    - by weka
    So, I'm making a HTML5 RPG just for fun. The map is a <canvas> (512px width, 352px height | 16 tiles across, 11 tiles top to bottom). I want to know if there's a more efficient way to paint the <canvas>. Here's how I have it right now. How tiles are loaded and painted on map The map is being painted by tiles (32x32) using the Image() piece. The image files are loaded through a simple for loop and put into an array called tiles[] to be PAINTED on using drawImage(). First, we load the tiles... and here's how it's being done: // SET UP THE & DRAW THE MAP TILES tiles = []; var loadedImagesCount = 0; for (x = 0; x <= NUM_OF_TILES; x++) { var imageObj = new Image(); // new instance for each image imageObj.src = "js/tiles/t" + x + ".png"; imageObj.onload = function () { console.log("Added tile ... " + loadedImagesCount); loadedImagesCount++; if (loadedImagesCount == NUM_OF_TILES) { // Onces all tiles are loaded ... // We paint the map for (y = 0; y <= 15; y++) { for (x = 0; x <= 10; x++) { theX = x * 32; theY = y * 32; context.drawImage(tiles[5], theY, theX, 32, 32); } } } }; tiles.push(imageObj); } Naturally, when a player starts a game it loads the map they last left off. But for here, it an all-grass map. Right now, the maps use 2D arrays. Here's an example map. [[4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 4, 1, 1, 1, 1, 1], [1, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 1, 1, 1, 1, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 1, 13, 13, 1, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 1, 13, 13, 1, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 1, 13, 13, 1, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 1, 1, 1, 1, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 13, 13, 13, 1, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 13, 13, 11, 11, 11, 13, 13, 13, 13, 13, 13, 13, 1], [13, 13, 13, 1, 1, 1, 1, 1, 1, 1, 13, 13, 13, 13, 13, 1], [1, 1, 1, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1, 1, 1]]; I get different maps using a simple if structure. Once the 2d array above is return, the corresponding number in each array will be painted according to Image() stored inside tile[]. Then drawImage() will occur and paint according to the x and y and times it by 32 to paint on the correct x-y coordinate. How multiple map switching occurs With my game, maps have five things to keep track of: currentID, leftID, rightID, upID, and bottomID. currentID: The current ID of the map you are on. leftID: What ID of currentID to load when you exit on the left of current map. rightID: What ID of currentID to load when you exit on the right of current map. downID: What ID of currentID to load when you exit on the bottom of current map. upID: What ID of currentID to load when you exit on the top of current map. Something to note: If either leftID, rightID, upID, or bottomID are NOT specific, that means they are a 0. That means they cannot leave that side of the map. It is merely an invisible blockade. So, once a person exits a side of the map, depending on where they exited... for example if they exited on the bottom, bottomID will the number of the map to load and thus be painted on the map. Here's a representational .GIF to help you better visualize: As you can see, sooner or later, with many maps I will be dealing with many IDs. And that can possibly get a little confusing and hectic. The obvious pros is that it load 176 tiles at a time, refresh a small 512x352 canvas, and handles one map at time. The con is that the MAP ids, when dealing with many maps, may get confusing at times. My question Is this an efficient way to store maps (given the usage of tiles), or is there a better way to handle maps? I was thinking along the lines of a giant map. The map-size is big and it's all one 2D array. The viewport, however, is still 512x352 pixels. Here's another .gif I made (for this question) to help visualize: Sorry if you cannot understand my English. Please ask anything you have trouble understanding. Hopefully, I made it clear. Thanks.

    Read the article

  • How to remove space between application and workspace switcher on Unity launcher?

    - by Tyler Marengo
    I just downloaded Ubuntu 11.10 for the first time. I really enjoy the launcher on the left hand side but have a problem. After playing around with adding applications in it, there are large spaces from the last application to workspace switcher. If I try to drag a new application into the launcher everything moves farther down, instead of filling in the space in between apps. When I right click on the launcher in a blank spot it reads "drop to add application." I'm looking for a way to have all of the applications close together with no spaces, like when I first downloaded Ubuntu.

    Read the article

  • 13.04 gnome problem with drag and drop and text selection

    - by Laurent BERNABE
    I have an ubuntu 13.04 gnome 64 bits, but since a few days I am facing serious problem for doing simple drag an drop : in nautilus, in eclipse, in the browser. Also I can't manage to select text areas with the mouse (the only way I found is to double click on the first word, then expand selection with shift and arrows keys). I noticed that often, after having started a drag n drop, it is cancelled though I did not release the left mouse ! It is as if for each simple mouse clic : two was done ! My graphic card is an ati radeon hd 4330, and I had installed the default purposed driver. I don't know if I should give you results from some terminal commands, as I don't know which could be useful. Thanks in advance.

    Read the article

  • Up, down, right arrow keys and delete key not working

    - by user210780
    I have already read Delete and arrow keys not working and tried what is written there. I have also tried restarting my computer. I have also searched elsewhere for answers, but I haven't found any solution. I am using Ubuntu 12.04, and there were not problems yesterday, but for the last hour, I've had the following problem. When I press the up or the right arrow, nothing happens. When I press the down arrow, it doesn't make anything go down, but something appears in the upper right corner of my screen: http://i.imgur.com/pmnFOCD.png When I press the delete key, nothing gets deleted, but something appears in the upper right corner of my screen: http://i.imgur.com/Wu9czel.png The left arrow still works. Can anybody help me get my three arrow keys and delete key back?

    Read the article

  • Scrolling Box2D DebugDraw

    - by onedayitwillmake
    I'm developing a game using Box2D (javascript implementation - Box2DWeb), and I would like to know how I can pan the debug draw. I know the usual answer is - don't use debug draw, it's just for debugging. I'm not, however not all my objects are on the same screen, and i'd like to see where they are in the physics representation. How can I pan the debug drawing? As you can see the debug draw stuff, is show on the top left, but it only shows a small part of the world. Here is an example of what I mean: http://onedayitwillmake.com/ChuClone/ The game is open source, If you'd like to poke through and note something that perhaps i'm doing something that is obviously wrong: https://github.com/onedayitwillmake/ChuClone

    Read the article

  • How to install Edubuntu on a system with low memory (256 Mb)?

    - by int_ua
    I'm preparing an old system with 256 Mb RAM to send it to some children. It doesn't have Ethernet controller and there are no Internet access at the destination. I've chosen Edubuntu for obvious reasons and modified it with UCK trying to minimize memory usage just to install, let alone using it yet. But Ubiquity won't start even in openbox (edited /etc/lightdm/lightdm.conf) because there are no space left on /cow right after booting. I've already deleted things like ibus, zeitgeist, update-manager (no network access after all), twisted-core, plymouth logos. I'm thinking about creating a swap partition on HDD, can it be later added to expand this /cow ? Is there a package for the text-mode installation which is used on Alternate CDs? I don't want to re-create Edubuntu from an Alternate CD. This behavior is reproducible in VM limited to 256Mb RAM.

    Read the article

  • How can the original icons and fonts be restored in ubuntu 12.10?

    - by Harsh
    Recently i installed cairo-dock and changed the original ubuntu theme. then i uninstalled it. but the icons on the left side didn't restored into its original look. Somewhere I found a command sudo apt-get autoremove --purge light-themes sudo apt-get install light-themes After running this command the theme didn't changed but it seems that the font of the original ubuntu changed a little. I want the theme of ubuntu as it was when i newly installed it. Moreover, the alt+tab and some other key combination not working normally. please help.

    Read the article

  • Why are my file selection dialogs so big? How do I make them smaller?

    - by Amanda
    When I use an external monitor, my file selection dialog boxes seem to be huge -- wider than my larger screen. I assume it is a nautilus issue since it happens whether I'm trying to open a file to upload (in firefox) or attach (in thunderbird) or just open it in LibreOffice. See screenshot: The browser window fills my left-hand monitor, the "open" dialog is wider than one screen, and wider than the window that spawned it. It's huge. It didn't used to be huge. Is there some way to force dialog windows to be smaller by default? Whenever I try to open/attach/upload a file I have to re-size the finder dialog before I can see what I'm looking at. I don't understand why it is defaulting to such a huge window.

    Read the article

  • WUBI install not completing on Dell Latitude D600 using 10.04 and 10.10

    - by Dennis
    While trying to install a dual boot from LiveCD, WUBI seems to go through all the steps correctly. It unpacks everything, reboots, starts to finalize the install, brings up the install slide show and seems to do everything necessary. The slide show disappears and what is left is what would normally be the background, however there is no login, no panels, no response to any input or keystrokes. Using 10.04 I had a mouse cursor (working) with 10.10, not even that. In 10.04 The only way to reboot is to shutdown using the power switch. When it reboots it goes through the "finalizing install" phase again. In 10.10 if I hit the power switch it brings up a shutdown menu that doesn't respond to the keyboard, but does shutdown when the 60 seconds expire.

    Read the article

< Previous Page | 338 339 340 341 342 343 344 345 346 347 348 349  | Next Page >